/** * Check the we have a remember me cookie, and apply if valid * * @param integer $userId id of user to establish in the session * * @return void */ public function addUserToSession($userId) { $session = $this->session; $memberHandler = $this->xoops->getHandlerMember(); $user = $memberHandler->getUser($userId); if ($user instanceof XoopsUser) { if ($user->isActive()) { // make sure all primary user data is consistent $session->set('xoopsUserId', $user->getVar('uid')); $session->set('xoopsUserGroups', $user->getGroups()); if (!$session->has('SESSION_AUTHSTATUS')) { $this->setNeedsConfirmed(); } // all is good, leave the existing info return; } } // invalid user - clear everything $session->clearSession(); return; }