Project

General

Profile

1 4 ryan
<?php
2
3 107 stefan
// $Id$
4 4 ryan
5
/*
6
7
 Website Baker Project <http://www.websitebaker.org/>
8 915 Ruebenwurz
 Copyright (C) 2004-2009, Ryan Djurovich
9 4 ryan
10
 Website Baker is free software; you can redistribute it and/or modify
11
 it under the terms of the GNU General Public License as published by
12
 the Free Software Foundation; either version 2 of the License, or
13
 (at your option) any later version.
14
15
 Website Baker is distributed in the hope that it will be useful,
16
 but WITHOUT ANY WARRANTY; without even the implied warranty of
17
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18
 GNU General Public License for more details.
19
20
 You should have received a copy of the GNU General Public License
21
 along with Website Baker; if not, write to the Free Software
22
 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
23
24
*/
25
26 932 doc
require('../../config.php');
27 4 ryan
28 932 doc
// delete remember key of current user from database
29
if (isset($_SESSION['USER_ID']) && isset($database)) {
30
	$table = TABLE_PREFIX . 'users';
31
	$sql = "UPDATE `$table` SET `remember_key` = '' WHERE `user_id` = '" . (int) $_SESSION['USER_ID'] . "'";
32
	$database->query($sql);
33 4 ryan
}
34
35 932 doc
// delete remember key cookie if set
36
if (isset($_COOKIE['REMEMBER_KEY'])) {
37
	setcookie('REMEMBER_KEY', '', time() - 3600, '/');
38
}
39
40
// delete most critical session variables manually
41 4 ryan
$_SESSION['USER_ID'] = null;
42
$_SESSION['GROUP_ID'] = null;
43 546 doc
$_SESSION['GROUPS_ID'] = null;
44 4 ryan
$_SESSION['USERNAME'] = null;
45
$_SESSION['PAGE_PERMISSIONS'] = null;
46
$_SESSION['SYSTEM_PERMISSIONS'] = null;
47 932 doc
48
// overwrite session array
49 4 ryan
$_SESSION = array();
50 932 doc
51
// delete session cookie if set
52
if (isset($_COOKIE[session_name()])) {
53
    setcookie(session_name(), '', time() - 42000, '/');
54
}
55
56
// delete the session itself
57 4 ryan
session_destroy();
58
59 932 doc
// redirect to admin login
60
die(header('Location: ' . ADMIN_URL . '/login/index.php'));
61 4 ryan
62
?>