Example #1
0
 /**
  * Actualiza los datos de los usuarios de LDAP en la BBDD.
  *
  * @return bool
  */
 public static function updateLDAPUserInDB(User $User)
 {
     $passdata = UserPass::makeUserPassHash($User->getUserPass());
     $query = 'UPDATE usrData SET ' . 'user_pass = :pass,' . 'user_hashSalt = :hashSalt,' . 'user_name = :name,' . 'user_email = :email,' . 'user_lastUpdate = NOW(),' . 'user_isLdap = 1 ' . 'WHERE user_id = :id LIMIT 1';
     $data['pass'] = $passdata['pass'];
     $data['hashSalt'] = $passdata['salt'];
     $data['name'] = $User->getUserName();
     $data['email'] = $User->getUserEmail();
     $data['id'] = UserUtil::getUserIdByLogin($User->getUserLogin());
     return DB::getQuery($query, __FUNCTION__, $data);
 }
Example #2
0
 /**
  * Comprobar si el usuario tiene actualizada la clave maestra actual.
  *
  * @param string $login opcional con el login del usuario
  * @return bool
  */
 public static function checkUserUpdateMPass($login = null)
 {
     $userId = !is_null($login) ? UserUtil::getUserIdByLogin($login) : Session::getUserId();
     if ($userId === 0) {
         return false;
     }
     $configMPassTime = ConfigDB::getValue('lastupdatempass');
     if ($configMPassTime === false) {
         return false;
     }
     $query = 'SELECT user_lastUpdateMPass FROM usrData WHERE user_id = :id LIMIT 1';
     $data['id'] = $userId;
     $queryRes = DB::getResults($query, __FUNCTION__, $data);
     $ret = $queryRes !== false && $queryRes->user_lastUpdateMPass > $configMPassTime;
     return $ret;
 }
 /**
  * Insertar un registro de recuperaciĆ³n de clave.
  *
  * @param string $login con el login del usuario
  * @param string $hash  con el hash para el cambio
  * @return bool
  */
 public static function addPassRecover($login, $hash)
 {
     $query = 'INSERT INTO usrPassRecover SET ' . 'userpassr_userId = :userId,' . 'userpassr_hash = :hash,' . 'userpassr_date = UNIX_TIMESTAMP(),' . 'userpassr_used = 0';
     $data['userId'] = UserUtil::getUserIdByLogin($login);
     $data['hash'] = $hash;
     return DB::getQuery($query, __FUNCTION__, $data);
 }
Example #4
0
 /**
  * Analizar la cadena de consulta por eqituetas especiales y devolver un array
  * con las columnas y los valores a buscar.
  *
  * @return array|bool
  */
 private function analyzeQueryString()
 {
     preg_match('/:(user|group|file)\\s(.*)/i', $this->_txtSearch, $filters);
     if (!is_array($filters) || count($filters) === 0) {
         return false;
     }
     switch ($filters[1]) {
         case 'user':
             return array('account_userId' => UserUtil::getUserIdByLogin(Html::sanitize($filters[2])), 'accuser_userId' => UserUtil::getUserIdByLogin(Html::sanitize($filters[2])));
             break;
         case 'group':
             return array('account_userGroupId' => Groups::getGroupIdByName(Html::sanitize($filters[2])), 'accgroup_groupId' => Groups::getGroupIdByName(Html::sanitize($filters[2])));
             break;
         case 'file':
             return array('accfile_name' => Html::sanitize($filters[2]));
             break;
         default:
             return false;
     }
 }