/**
* Check if a user is logged in or kick them.
*/
function checkUser()
{
$database = Kimai_Registry::getDatabase();
if (isset($_COOKIE['kimai_user']) && isset($_COOKIE['kimai_key']) && $_COOKIE['kimai_user'] != "0" && $_COOKIE['kimai_key'] != "0") {
$kimai_user = addslashes($_COOKIE['kimai_user']);
$kimai_key = addslashes($_COOKIE['kimai_key']);
if ($database->get_seq($kimai_user) != $kimai_key) {
Logger::logfile("Kicking user {$kimai_user} because of authentication key mismatch.");
kickUser();
} else {
$user = $database->checkUserInternal($kimai_user);
Kimai_Registry::setUser(new Kimai_User($user));
return $user;
}
}
Logger::logfile("Kicking user because of missing cookie.");
kickUser();
}