/** * Gets the user token from session if it exists or create+store * it in session. * * @return string|null */ public static function getToken() { if (eZSession::issetkey(self::SESSION_KEY)) { return eZSession::get(self::SESSION_KEY); } $token = md5(uniqid(self::SESSION_KEY, true)); eZSession::set(self::SESSION_KEY, $token); return $token; }
function checkUser(&$siteBasics, $uri) { $http = eZHTTPTool::instance(); $check = array("module" => "user", "function" => "login"); if (eZSession::issetkey('eZUserLoggedInID', false) && $http->sessionVariable("eZUserLoggedInID") != '' && $http->sessionVariable("eZUserLoggedInID") != self::anonymousId()) { $currentUser = eZUser::currentUser(); if (!$currentUser->isEnabled()) { eZUser::logoutCurrent(); $currentUser = eZUser::currentUser(); } else { return null; } } $ini = eZINI::instance(); $moduleName = $uri->element(); $viewName = $uri->element(1); $anonymousAccessList = $ini->variable("SiteAccessSettings", "AnonymousAccessList"); foreach ($anonymousAccessList as $anonymousAccess) { $elements = explode('/', $anonymousAccess); if (!isset($elements[1])) { if ($moduleName == $elements[0]) { return null; } } else { if ($moduleName == $elements[0] and $viewName == $elements[1]) { return null; } } } return $check; }
/** * Check if session variable $name exists * * @param string $name * @param bool $forceStart Force session start if true (default) * @return bool|null Null if session has not started and $forceStart is false */ function hasSessionVariable($name, $forceStart = true) { return eZSession::issetkey($name, $forceStart); }