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()); }
/** * * @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); } }
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); }
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); } }