Exemple #1
0
/**
 * Выход пользователя из системы
 *
 * @param boolean $save_cookie Удалять сохраненные кукисы или нет 
 */
function logout($save_cookie = FALSE)
{
    if (!$save_cookie) {
        $sql = "UPDATE users SET solt=NULL WHERE login='******'login'] . "'";
        pg_query(DBConnect(), $sql);
        if (is_emp()) {
            require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/projects.php";
            tmp_project::clearTmpAll($_SESSION['login']);
        }
    }
    $GLOBALS['session']->logout($_SESSION['login']);
    if ($_SESSION['uid']) {
        require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/activate_code.php";
        $user = new users();
        $active = $user->GetField($_SESSION['uid'], $err, 'active');
        $activate_code = activate_code::getActivateCodeByUid($_SESSION['uid']);
        if ($activate_code != '' && ($active == true || $active == 't')) {
            $user->active = false;
        }
        $user->last_time = 'now';
        $user->Update($_SESSION['uid'], $res);
    }
    //Переносим хеши ссылок на уже зафиксированные местки для юзера при выходе/входе
    $_ga_stat_url_hash = isset($_SESSION['ga_stat_url_hash']) ? $_SESSION['ga_stat_url_hash'] : null;
    session_unset();
    //Воссанавливаем значение хешей ссылок
    if ($_ga_stat_url_hash) {
        $_SESSION['ga_stat_url_hash'] = $_ga_stat_url_hash;
    }
    if (!$save_cookie) {
        uncookie();
    }
}