Well, apparently base_uri gets destroyed with the session.
[squirrelmail.git] / src / signout.php
1 <?php
2
3 /**
4 * signout.php -- cleans up session and logs the user out
5 *
6 * Copyright (c) 1999-2002 The SquirrelMail Project Team
7 * Licensed under the GNU GPL. For full terms see the file COPYING.
8 *
9 * Cleans up after the user. Resets cookies and terminates session.
10 *
11 * $Id$
12 */
13
14 require_once('../src/validate.php');
15 require_once('../functions/prefs.php');
16 require_once('../functions/plugin.php');
17 require_once('../functions/strings.php');
18
19 /* Erase any lingering attachments */
20 if (! isset($attachments)) {
21 $attachments = array();
22 }
23 $hashed_attachment_dir = getHashedDir($username, $attachment_dir);
24 foreach ($attachments as $info) {
25 $attached_file = "$hashed_attachment_dir/$info[localfilename]";
26 if (file_exists($attached_file)) {
27 unlink($attached_file);
28 }
29 }
30
31 if (!isset($frame_top)) {
32 $frame_top = '_top';
33 }
34
35 /* If a user hits reload on the last page, $base_uri isn't set
36 * because it was deleted with the session. */
37 if (!isset($base_uri)) {
38 $base_uri = dirname(dirname($PHP_SELF)) . "/";
39 }
40
41 do_hook('logout');
42 setcookie('username', '', 0, $base_uri);
43 setcookie('key', '', 0, $base_uri);
44 session_destroy();
45
46 if ($signout_page) {
47 header('Status: 303 See Other');
48 header("Location: $signout_page");
49 exit; /* we send no content if we're redirecting. */
50 }
51 ?>
52 <HTML>
53 <HEAD>
54 <?php
55 if ($theme_css != '') {
56 ?>
57 <LINK REL="stylesheet" TYPE="text/css" HREF="<?php echo $theme_css ?>">
58 <?php
59 }
60 ?>
61 <TITLE><?php echo $org_title ?> - Signout</TITLE>
62 </HEAD>
63 <BODY TEXT="<?php echo $color[8] ?>" BGCOLOR="<?php echo $color[4] ?>"
64 LINK="<?php echo $color[7] ?>" VLINK="<?php echo $color[7] ?>"
65 ALINK="<?php echo $color[7] ?>">
66 <BR><BR>
67 <TABLE BGCOLOR="<?php echo $color[4]; ?>" BORDER="0" COLS="1" WIDTH="50%" CELLSPACING="0"
68 CELLPADDING="2" ALIGN="CENTER">
69 <TR BGCOLOR="<?php echo $color[0] ?>" WIDTH="100%">
70 <TD ALIGN="CENTER">
71 <B><?php echo _("Sign Out") ?></B>
72 </TD>
73 </TR>
74 <TR BGCOLOR="<?php echo $color[4] ?>" WIDTH="100%">
75 <TD ALIGN="CENTER">
76 <?php do_hook('logout_above_text'); ?>
77 <?php echo _("You have been successfully signed out.") ?><BR>
78 <A HREF="login.php" TARGET="<?php echo $frame_top ?>">
79 <?php echo _("Click here to log back in.") ?>
80 </A><BR><BR>
81 </TD>
82 </TR>
83 <TR BGCOLOR="<?php echo $color[0] ?>" WIDTH="100%">
84 <TD ALIGN="CENTER">
85 <BR>
86 </TD>
87 </TR>
88 </TABLE>
89 </BODY>
90 </HTML>