<?php
- /**
- ** 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.
- **
- ** $Id$
- **/
- session_start();
+/**
+ * signout.php -- cleans up session and logs the user out
+ *
+ * Cleans up after the user. Resets cookies and terminates session.
+ *
+ * @copyright © 1999-2006 The SquirrelMail Project Team
+ * @license http://opensource.org/licenses/gpl-license.php GNU Public License
+ * @version $Id$
+ * @package squirrelmail
+ */
- include ("../src/load_prefs.php");
+/**
+ * Path for SquirrelMail required files.
+ * @ignore
+ */
+define('SM_PATH','../');
- if (!isset($config_php))
- include("../config/config.php");
- if (!isset($i18n_php))
- include("../functions/i18n.php");
- if (!isset($prefs_php))
- include ("../functions/prefs.php");
- if (!isset($plugin_php))
- include ("../functions/plugin.php");
+include_once(SM_PATH . 'include/validate.php');
+require_once(SM_PATH . 'functions/prefs.php');
+require_once(SM_PATH . 'functions/plugin.php');
+require_once(SM_PATH . 'functions/strings.php');
+require_once(SM_PATH . 'functions/html.php');
- set_up_language(getPref($data_dir, $username, "language"));
+/* Erase any lingering attachments */
+sqgetGlobalVar('compose_messages', $compose_messages, SQ_SESSION);
- do_hook("logout");
- setcookie("username", "", 0, $base_uri);
- setcookie("key", "", 0, $base_uri);
- setcookie("logged_in", "", 0, $base_uri);
- session_destroy();
+if (!empty($compose_message) && is_array($compose_messages)) {
+ foreach($compose_messages as $composeMessage) {
+ $composeMessage->purgeAttachments();
+ }
+}
+
+if (!isset($frame_top)) {
+ $frame_top = '_top';
+}
+
+/* If a user hits reload on the last page, $base_uri isn't set
+ * because it was deleted with the session. */
+if (! sqgetGlobalVar('base_uri', $base_uri, SQ_SESSION) ) {
+ require_once(SM_PATH . 'functions/display_messages.php');
+ $base_uri = sqm_baseuri();
+}
+
+do_hook('logout');
+
+sqsession_destroy();
+
+if ($signout_page) {
+ header('Status: 303 See Other');
+ header("Location: $signout_page");
+ exit; /* we send no content if we're redirecting. */
+}
+
+/* internal gettext functions will fail, if language is not set */
+set_up_language($squirrelmail_language, true, true);
?>
-<HTML>
- <HEAD>
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
+ "http://www.w3.org/TR/1999/REC-html401-19991224/loose.dtd">
+<html>
+<head>
<?php
- if ($theme_css != "") {
- printf ('<LINK REL="stylesheet" TYPE="text/css" HREF="%s">',
- $theme_css);
- echo "\n";
- }
- echo "<TITLE>$title - Signout</TITLE>\n";
- echo "</HEAD><BODY TEXT=$color[8] 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>";
+ if ($theme_css != '') {
+?>
+ <link rel="stylesheet" type="text/css" href="<?php echo $theme_css; ?>" />
+<?php
+ }
+?>
+ <meta name="robots" content="noindex,nofollow">
+ <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 />
+<?php
+$plugin_message = concat_hook_function('logout_above_text');
+echo
+html_tag( 'table',
+ html_tag( 'tr',
+ html_tag( 'th', _("Sign Out"), 'center' ) ,
+ '', $color[0] ) .
+ $plugin_message .
+ html_tag( 'tr',
+ html_tag( 'td', _("You have been successfully signed out.") .
+ '<br /><a href="login.php" target="' . $frame_top . '">' .
+ _("Click here to log back in.") . '</a><br />' ,
+ 'center' ) ,
+ '', $color[4] ) .
+ html_tag( 'tr',
+ html_tag( 'td', '<br />', 'center' ) ,
+ '', $color[0] ) ,
+'center', $color[4], 'width="50%" cellpadding="2" cellspacing="0" border="0"' );
+
+$oTemplate->display('footer.tpl');
?>
-</BODY>
-</HTML>