Exemple #1
0
 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();
 }