/**
* signout.php -- cleans up session and logs the user out
*
- * Copyright (c) 1999-2002 The SquirrelMail Project Team
+ * Copyright (c) 1999-2005 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$
+ * @version $Id$
+ * @package squirrelmail
*/
-/*****************************************************************/
-/*** 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. ***/
-/*****************************************************************/
+/**
+ * Path for SquirrelMail required files.
+ * @ignore
+ */
+define('SM_PATH','../');
+
+require_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');
+
+/* Erase any lingering attachments */
+if (isset($attachments) && is_array($attachments)
+ && sizeof($attachments)){
+ $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);
+ }
+ }
+}
-require_once('../src/validate.php');
-require_once('../functions/prefs.php');
-require_once('../functions/plugin.php');
-require_once('../functions/strings.php');
+if (!isset($frame_top)) {
+ $frame_top = '_top';
+}
- // 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);
- }
- }
+/* 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();
+}
- // 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');
- do_hook('logout');
- setcookie('username', '', 0, $base_uri);
- setcookie('key', '', 0, $base_uri);
- session_destroy();
+sqsession_destroy();
- if ($signout_page) {
- header("Status: 303 See Other");
- header("Location: $signout_page");
- exit; /* we send no content if we're redirecting. */
- }
+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);
+?>
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<?php
+ if ($theme_css != '') {
?>
-<HTML>
- <HEAD>
+ <link rel="stylesheet" type="text/css" href="<?php echo $theme_css; ?>" />
<?php
- if ($theme_css != '') {
+ }
?>
-<LINK REL="stylesheet" TYPE="text/css" HREF="<?php echo $theme_css ?>">
+ <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], 'width="100%"' ) .
+ $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], 'width="100%"' ) .
+ html_tag( 'tr',
+ html_tag( 'td', '<br />', 'center' ) ,
+ '', $color[0], 'width="100%"' ) ,
+'center', $color[4], 'width="50%" cols="1" cellpadding="2" cellspacing="0" border="0"' )
?>
-<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="<?php echo $color[4]; ?>" 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>
+</body>
+</html>