Esempio n. 1
0
 public function registerLogin(Gpf_Rpc_Form $loginForm = null)
 {
     $isFromApi = Gpf::NO;
     if ($loginForm != null) {
         try {
             $isFromApi = $loginForm->getFieldValue('isFromApi');
         } catch (Gpf_Exception $e) {
         }
     }
     if ($isFromApi == Gpf::YES) {
         return;
     }
     $log = new Gpf_Db_LoginHistory();
     $loginDbTime = $log->createDatabase()->getDateString();
     $log->setLoginTime($loginDbTime);
     $log->setIp(Gpf_Http::getRemoteIp());
     $log->setLastRequestTime($loginDbTime);
     $log->setAccountUserId(Gpf_Session::getInstance()->getAuthUser()->getAccountUserId());
     $log->insert();
     Gpf_Session::getInstance()->setVar(Gpf_Db_Table_LoginsHistory::ID, $log->getId());
     Gpf_Session::getInstance()->setVar(Gpf_Db_Table_LoginsHistory::LAST_REQUEST, time());
 }
Esempio n. 2
0
 /**
  *
  * @param unknown_type $requestObj
  * @return Gpf_Rpc_Serializable
  */
 private function executeRequest(Gpf_Rpc_Params $params)
 {
     try {
         Gpf_Db_LoginHistory::logRequest();
         return $this->callServiceMethod($params);
     } catch (Gpf_Rpc_SessionExpiredException $e) {
         return $e;
     } catch (Exception $e) {
         return new Gpf_Rpc_ExceptionResponse($e);
     }
 }
Esempio n. 3
0
 public function logout()
 {
     Gpf_Log::info($this->_sys('Logged out user %s', $this->getUsername()));
     Gpf_Db_LoginHistory::logLogout();
     $this->clearRememberMeCookie();
     Gpf_Session::getInstance()->destroy();
     Gpf_Plugins_Engine::extensionPoint('Gpf_Auth_User.logout', $this);
 }
Esempio n. 4
0
 public static function logLogout()
 {
     try {
         if (!Gpf_Session::getInstance()->getAuthUser()->isLogged()) {
             //user is not logged in, don't monitor his session
             return;
         }
     } catch (Exception $e) {
         return;
     }
     if ($loginId = Gpf_Session::getInstance()->getVar(Gpf_Db_Table_LoginsHistory::ID)) {
         $log = new Gpf_Db_LoginHistory();
         $log->setId($loginId);
         $log->setLogoutTime($log->createDatabase()->getDateString());
         $log->update();
         Gpf_Session::getInstance()->setVar(Gpf_Db_Table_LoginsHistory::ID, false);
     }
 }