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