public function checkLogin() { $session = Core::make('session'); $aeu = Config::get('concrete.misc.access_entity_updated'); if ($aeu && $aeu > $session->get('accessEntitiesUpdated')) { User::refreshUserGroups(); } if ($session->get('uID') > 0) { $db = Loader::db(); $row = $db->GetRow("select uID, uIsActive, uLastPasswordChange from Users where uID = ? and uName = ?", array($session->get('uID'), $session->get('uName'))); $checkUID = isset($row['uID']) ? $row['uID'] : false; if ($checkUID == $session->get('uID')) { if (!$row['uIsActive']) { return false; } if ($row['uLastPasswordChange'] > $session->get('uLastPasswordChange')) { $this->loadError(USER_SESSION_EXPIRED); return false; } $session->set('uOnlineCheck', time()); if ($session->get('uOnlineCheck') - $session->get('uLastOnline') > ONLINE_NOW_TIMEOUT / 2) { $db = Loader::db(); $db->query("update Users set uLastOnline = ? where uID = ?", array($session->get('uOnlineCheck'), $this->uID)); $session->set('uLastOnline', $session->get('uOnlineCheck')); } return true; } else { return false; } } }
public function refreshUserGroups() { return parent::refreshUserGroups(); }