Session save part 2
[squirrelmail.git] / src / signout.php
CommitLineData
59177427 1<?php
895905c0 2
35586184 3/**
4 * signout.php -- cleans up session and logs the user out
5 *
15e6162e 6 * Copyright (c) 1999-2002 The SquirrelMail Project Team
35586184 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 */
8b522a59 13
35586184 14/*****************************************************************/
15/*** THIS FILE NEEDS TO HAVE ITS FORMATTING FIXED!!! ***/
16/*** PLEASE DO SO AND REMOVE THIS COMMENT SECTION. ***/
17/*** + Base level indent should begin at left margin, as ***/
18/*** the require_once below looks. ***/
19/*** + All identation should consist of four space blocks ***/
20/*** + Tab characters are evil. ***/
21/*** + all comments should use "slash-star ... star-slash" ***/
22/*** style -- no pound characters, no slash-slash style ***/
23/*** + FLOW CONTROL STATEMENTS (if, while, etc) SHOULD ***/
24/*** ALWAYS USE { AND } CHARACTERS!!! ***/
25/*** + Please use ' instead of ", when possible. Note " ***/
26/*** should always be used in _( ) function calls. ***/
27/*** Thank you for your help making the SM code more readable. ***/
28/*****************************************************************/
29
30require_once('../src/validate.php');
31require_once('../functions/prefs.php');
32require_once('../functions/plugin.php');
f740c049 33
f740c049 34 // Erase any lingering attachments
cf6c6275 35 if (! isset($attachments)) {
5c263f27 36 $attachments = array();
cf6c6275 37 }
3392dc86 38 $hashed_attachment_dir = getHashedDir($username, $attachment_dir);
cf6c6275 39 foreach ($attachments as $info) {
3392dc86 40 $attached_file = "$hashed_attachment_dir/$info[localfilename]";
41 if (file_exists($attached_file)) {
42 unlink($attached_file);
f740c049 43 }
44 }
288491a4 45
ceac7a2f 46 // If a user hits reload on the last page, $base_uri isn't set
47 // because it was deleted with the session.
cf6c6275 48 if (! isset($base_uri)) {
ceac7a2f 49 ereg ("(^.*/)[^/]+/[^/]+$", $PHP_SELF, $regs);
50 $base_uri = $regs[1];
51 }
52
91dc6e4e 53 do_hook('logout');
54 setcookie('username', '', 0, $base_uri);
55 setcookie('key', '', 0, $base_uri);
9f2215a1 56 session_destroy();
f923b93d 57
58 if ($signout_page) {
59 header("Status: 303 See Other");
60 header("Location: $signout_page");
61 exit; /* we send no content if we're redirecting. */
62 }
21c3249f 63?>
64<HTML>
e90872be 65 <HEAD>
59177427 66<?php
91dc6e4e 67 if ($theme_css != '') {
8c65f339 68?>
cab59568 69<LINK REL="stylesheet" TYPE="text/css" HREF="<?php echo $theme_css ?>">
8c65f339 70<?php
e90872be 71 }
21c3249f 72?>
8437bc78 73<TITLE><?php echo $org_title ?> - Signout</TITLE>
8c65f339 74</HEAD>
8437bc78 75<BODY TEXT="<?php echo $color[8] ?>" BGCOLOR="<?php echo $color[4] ?>"
cf6df86f 76LINK="<?php echo $color[7] ?>" VLINK="<?php echo $color[7] ?>"
77ALINK="<?php echo $color[7] ?>">
8c65f339 78<BR><BR>
79<TABLE BGCOLOR="FFFFFF" BORDER="0" COLS="1" WIDTH="50%" CELLSPACING="0"
80CELLPADDING="2" ALIGN="CENTER">
bd9bbfef 81 <TR BGCOLOR="<?php echo $color[0] ?>" WIDTH="100%">
8c65f339 82 <TD ALIGN="CENTER">
8437bc78 83 <B><?php echo _("Sign Out") ?></B>
8c65f339 84 </TD>
85 </TR>
bd9bbfef 86 <TR BGCOLOR="<?php echo $color[4] ?>" WIDTH="100%">
8c65f339 87 <TD ALIGN="CENTER">
cf6df86f 88 <?php do_hook('logout_above_text'); ?>
8437bc78 89 <?php echo _("You have been successfully signed out.") ?><BR>
90 <A HREF="login.php" TARGET="_top">
91 <?php echo _("Click here to log back in.") ?>
8c65f339 92 </A><BR><BR>
93 </TD>
94 </TR>
bd9bbfef 95 <TR BGCOLOR="<?php echo $color[0] ?>" WIDTH="100%">
8c65f339 96 <TD ALIGN="CENTER">
97 <BR>
98 </TD>
99 </TR>
100</TABLE>
21c3249f 101</BODY>
e0dcff78 102</HTML>