Esempio n. 1
0
 /**
  * Checks the number of entries of given login name
  *
  * @param  string $login        Loginname
  * @param  array  $optionslData Optional data
  * @return integer
  */
 public function checkLogin($login, array $optionalData = null)
 {
     $check = sprintf("\n            SELECT\n                login\n            FROM\n                %sfaquserlogin\n            WHERE\n                login = '******'", SQLPREFIX, $this->db->escape_string($login));
     $check = $this->db->query($check);
     $error = $this->db->error();
     if (strlen($error) > 0) {
         $this->errors[] = $error;
         return 0;
     }
     return $this->db->num_rows($check);
 }
Esempio n. 2
0
 /**
  * Checks the number of entries of given login name
  *
  * @param  string $login        Loginname
  * @param  array  $optionalData Optional data
  *
  * @return integer
  */
 public function checkLogin($login, array $optionalData = null)
 {
     $check = sprintf("\n            SELECT\n                login\n            FROM\n                %sfaquserlogin\n            WHERE\n                login = '******'", PMF_Db::getTablePrefix(), $this->db->escape($login));
     $check = $this->db->query($check);
     $error = $this->db->error();
     if (strlen($error) > 0) {
         $this->errors[] = $error;
         return 0;
     }
     return $this->db->numRows($check);
 }
Esempio n. 3
0
 /**
  * deletes the user from the database.
  *
  * @return boolean
  */
 public function deleteUser()
 {
     if (!isset($this->user_id) || $this->user_id == 0) {
         $this->errors[] = self::ERROR_USER_NO_USERID;
         return false;
     }
     if (!isset($this->login) || strlen($this->login) == 0) {
         $this->errors[] = self::ERROR_USER_LOGIN_INVALID;
         return false;
     }
     if (isset($this->allowed_status[$this->status]) && $this->allowed_status[$this->status] == self::STATUS_USER_PROTECTED) {
         $this->errors[] = self::ERROR_USER_CANNOT_DELETE_USER . self::STATUS_USER_PROTECTED;
         return false;
     }
     $this->perm->refuseAllUserRights($this->user_id);
     $delete = sprintf("\n            DELETE FROM\n                %sfaquser\n            WHERE\n                user_id = %d", SQLPREFIX, $this->user_id);
     $res = $this->db->query($delete);
     if (!$res) {
         $this->errors[] = self::ERROR_USER_CANNOT_DELETE_USER . 'error(): ' . $this->db->error();
         return false;
     }
     if (!$this->userdata instanceof PMF_User_UserData) {
         $this->userdata = new PMF_User_UserData($this->db);
     }
     $data = $this->userdata->delete($this->getUserId());
     if (!$data) {
         $this->errors[] = self::ERROR_USER_CANNOT_DELETE_USERDATA;
         return false;
     }
     $read_only = 0;
     $auth_count = 0;
     $delete = array();
     foreach ($this->auth_container as $auth) {
         $auth_count++;
         if ($auth->setReadOnly()) {
             $read_only++;
             continue;
         }
         $delete[] = $auth->delete($this->login);
     }
     if ($read_only == $auth_count) {
         $this->errors[] = self::ERROR_USER_NO_AUTH_WRITABLE;
     }
     if (!in_array(true, $delete)) {
         return false;
     }
     return true;
 }