/** * Login user. * * @internal */ public static function login() { $config = self::getConfig(); if (empty($config['login']) || !isset($_COOKIE[$config['login']]) || empty($config['password']) || !isset($_COOKIE[$config['password']])) { // return if no login cookie set return; } if (!Session::isLoggedIn()) { // try to login $user_id = User::getIdByCredentials($_COOKIE[$config['login']], $_COOKIE[$config['password']], true); if ($user_id !== false) { $_SESSION['thisuser'] = User::getByPk($user_id); Logger::getInstance()->info("login with cookies"); LogEvent::add(['event' => 'Login.Cookie.Success', 'user_id' => $user_id, 'reference_parameters' => json_encode([]), 'description' => $_SESSION['thisuser']['name'] . ' logged in (über Cookies)']); } else { LogEvent::add(['event' => 'Login.Cookie.Failed', 'user_id' => 0, 'reference_parameters' => json_encode([]), 'description' => $_COOKIE[$config['login']] . ' hat sich vergeblich versucht einzuloggen (über Cookies)']); self::deleteLoginCookie(); } } else { // renew Logger::getInstance()->info("renew login cookie"); self::setLoginCookie($_COOKIE[$config['login']], $_COOKIE[$config['password']]); } }
/** * * @internal * * @param array $reference reference ids * @param string $description (optional) additional information * @param bool $success (optional) */ protected final function logEvent(array $reference, $description = null, $success = false) { LogEvent::add(['event' => Router::getModule() . '.' . $this->command . '.' . ($success ? 'Success' : 'Fail'), 'user_id' => Session::getUserId(), 'reference_parameters' => json_encode($reference), 'description' => $description]); }