protected static function initializeUser() { Logging::log('Loading user'); try { Logging::log('is this logout?'); if (self::getRequest()->getParameter('logout')) { Logging::log('yes'); self::logout(); } else { Logging::log('no'); Logging::log('sets up user object'); $event = Event::createNew('core', 'pre_login'); $event->trigger(); if ($event->isProcessed()) { self::loadUser($event->getReturnValue()); } elseif (!self::isCLI()) { self::loadUser(); } else { self::$_user = new User(); } Event::createNew('core', 'post_login', self::getUser())->trigger(); Logging::log('loaded'); Logging::log('caching permissions'); self::cacheAllPermissions(); Logging::log('done (caching permissions)'); } } catch (exceptions\ElevatedLoginException $e) { Logging::log("Could not reauthenticate elevated permissions: " . $e->getMessage(), 'main', Logging::LEVEL_INFO); self::setMessage('elevated_login_message_err', $e->getMessage()); self::$_redirect_login = '******'; } catch (\Exception $e) { Logging::log("Something happened while setting up user: " . $e->getMessage(), 'main', Logging::LEVEL_WARNING); $is_anonymous_route = self::isCLI() || self::getRouting()->isCurrentRouteAnonymousRoute(); if (!$is_anonymous_route) { self::setMessage('login_message_err', $e->getMessage()); self::$_redirect_login = '******'; } else { self::$_user = User::getB2DBTable()->selectById(Settings::getDefaultUserID()); } } Logging::log('...done'); }