<?php
- session_start();
- /**
- ** signout.php -- cleans up session and logs the user out
- **
- ** Copyright (c) 1999-2000 The SquirrelMail development team
- ** Licensed under the GNU GPL. For full terms see the file COPYING.
- **
- ** Cleans up after the user. Resets cookies and terminates
- ** session.
- **
- **/
+/**
+ * signout.php -- cleans up session and logs the user out
+ *
+ * Copyright (c) 1999-2002 The SquirrelMail Project Team
+ * Licensed under the GNU GPL. For full terms see the file COPYING.
+ *
+ * Cleans up after the user. Resets cookies and terminates session.
+ *
+ * $Id$
+ */
- include ("../src/load_prefs.php");
+/*****************************************************************/
+/*** THIS FILE NEEDS TO HAVE ITS FORMATTING FIXED!!! ***/
+/*** PLEASE DO SO AND REMOVE THIS COMMENT SECTION. ***/
+/*** + Base level indent should begin at left margin, as ***/
+/*** the require_once below looks. ***/
+/*** + All identation should consist of four space blocks ***/
+/*** + Tab characters are evil. ***/
+/*** + all comments should use "slash-star ... star-slash" ***/
+/*** style -- no pound characters, no slash-slash style ***/
+/*** + FLOW CONTROL STATEMENTS (if, while, etc) SHOULD ***/
+/*** ALWAYS USE { AND } CHARACTERS!!! ***/
+/*** + Please use ' instead of ", when possible. Note " ***/
+/*** should always be used in _( ) function calls. ***/
+/*** Thank you for your help making the SM code more readable. ***/
+/*****************************************************************/
- if (!isset($i18n_php))
- include("../functions/i18n.php");
- if (!isset($prefs_php))
- include ("../functions/prefs.php");
- if (!isset($plugin_php))
- include ("../functions/plugin.php");
+require_once('../src/validate.php');
+require_once('../functions/prefs.php');
+require_once('../functions/plugin.php');
+include_once('../functions/strings.php');
- // Quick Fix for Gettext in LogOut Screen
- if (!function_exists("_")) {
- function _($string) {
- return $string;
- }
+ // Erase any lingering attachments
+ if (! isset($attachments)) {
+ $attachments = array();
+ }
+ $hashed_attachment_dir = getHashedDir($username, $attachment_dir);
+ foreach ($attachments as $info) {
+ $attached_file = "$hashed_attachment_dir/$info[localfilename]";
+ if (file_exists($attached_file)) {
+ unlink($attached_file);
+ }
}
- $squirrelmail_language = getPref ($data_dir, $username, "language");
- if (isset($squirrelmail_language)) {
- if ($squirrelmail_language != "en" && $squirrelmail_language != "") {
- putenv("LC_ALL=".$squirrelmail_language);
- bindtextdomain("squirrelmail", "../locale/");
- textdomain("squirrelmail");
- header ("Content-Type: text/html; charset=".$languages[$squirrelmail_language]["CHARSET"]);
-
- // Setting cookie to use on the login screen the next time the
- // same user logs in.
- setcookie("squirrelmail_language", $squirrelmail_language,
- time()+2592000);
-
- }
+ // If a user hits reload on the last page, $base_uri isn't set
+ // because it was deleted with the session.
+ if (! isset($base_uri)) {
+ ereg ("(^.*/)[^/]+/[^/]+$", $PHP_SELF, $regs);
+ $base_uri = $regs[1];
}
- do_hook("logout");
- setcookie("username", "", 0, $base_uri);
- setcookie("key", "", 0, $base_uri);
- setcookie("logged_in", "", 0, $base_uri);
+ do_hook('logout');
+ setcookie('username', '', 0, $base_uri);
+ setcookie('key', '', 0, $base_uri);
session_destroy();
+
+ if ($signout_page) {
+ header("Status: 303 See Other");
+ header("Location: $signout_page");
+ exit; /* we send no content if we're redirecting. */
+ }
?>
<HTML>
+ <HEAD>
+<?php
+ if ($theme_css != '') {
+?>
+<LINK REL="stylesheet" TYPE="text/css" HREF="<?php echo $theme_css ?>">
<?php
- echo "<BODY TEXT=000000 BGCOLOR=$color[4] LINK=$color[7] VLINK=$color[7] ALINK=$color[7]>\n";
- echo "<BR><BR><TABLE BGCOLOR=FFFFFF BORDER=0 COLS=1 WIDTH=50% CELLSPACING=0 CELLPADDING=2 ALIGN=CENTER>";
- echo " <TR BGCOLOR=$color[0] WIDTH=100%>";
- echo " <TD ALIGN=CENTER>";
- echo " <B>";
- echo _("Sign Out");
- echo "</B>";
- echo " </TD>";
- echo " </TR>";
- echo " <TR BGCOLOR=$color[4] WIDTH=100%>";
- echo " <TD ALIGN=CENTER>";
- echo " <BR>";
- echo _("You have been successfully signed out.");
- echo "<BR>";
- echo "<A HREF=\"login.php\" TARGET=_top>";
- echo _("Click here to log back in.");
- echo "</A><BR><BR>";
- echo " </TD>";
- echo " </TR>";
- echo " <TR BGCOLOR=$color[0] WIDTH=100%>";
- echo " <TD ALIGN=CENTER>";
- echo " <br>";
- echo " </TD>";
- echo " </TR>";
- echo "</TABLE>";
- echo "<br><br>";
+ }
?>
+<TITLE><?php echo $org_title ?> - Signout</TITLE>
+</HEAD>
+<BODY TEXT="<?php echo $color[8] ?>" BGCOLOR="<?php echo $color[4] ?>"
+LINK="<?php echo $color[7] ?>" VLINK="<?php echo $color[7] ?>"
+ALINK="<?php echo $color[7] ?>">
+<BR><BR>
+<TABLE BGCOLOR="FFFFFF" BORDER="0" COLS="1" WIDTH="50%" CELLSPACING="0"
+CELLPADDING="2" ALIGN="CENTER">
+ <TR BGCOLOR="<?php echo $color[0] ?>" WIDTH="100%">
+ <TD ALIGN="CENTER">
+ <B><?php echo _("Sign Out") ?></B>
+ </TD>
+ </TR>
+ <TR BGCOLOR="<?php echo $color[4] ?>" WIDTH="100%">
+ <TD ALIGN="CENTER">
+ <?php do_hook('logout_above_text'); ?>
+ <?php echo _("You have been successfully signed out.") ?><BR>
+ <A HREF="login.php" TARGET="_top">
+ <?php echo _("Click here to log back in.") ?>
+ </A><BR><BR>
+ </TD>
+ </TR>
+ <TR BGCOLOR="<?php echo $color[0] ?>" WIDTH="100%">
+ <TD ALIGN="CENTER">
+ <BR>
+ </TD>
+ </TR>
+</TABLE>
</BODY>
</HTML>