X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=src%2Fsignout.php;h=7088c7c9110493dbca420f8fed19d923a47fd430;hb=c75490c1b4ee2e2f88b44d0143e70898ba1607e3;hp=8e15b7c83d7ad3b060241d11f16fd4e59f85d85c;hpb=3392dc867232037b2c6e2089ebcab9d64e154db7;p=squirrelmail.git diff --git a/src/signout.php b/src/signout.php index 8e15b7c8..7088c7c9 100644 --- a/src/signout.php +++ b/src/signout.php @@ -3,100 +3,114 @@ /** * signout.php -- cleans up session and logs the user out * - * Copyright (c) 1999-2001 The SquirrelMail Development Team + * Copyright (c) 1999-2004 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','../'); + +/* check if we're already logged out (e.g. when this page is reloaded), + * so we can skip to the output and not give error messages */ +if( ! isset($_SESSION) || empty($_SESSION['user_is_logged_in']) ) { + $loggedin = false; +} else { + $loggedin = true; +} + +if($loggedin) { + require_once(SM_PATH . 'include/validate.php'); + require_once(SM_PATH . 'functions/prefs.php'); +} else { + // this comes in through validate.php usually + require_once(SM_PATH . 'config/config.php'); + require_once(SM_PATH . 'functions/i18n.php'); + require_once(SM_PATH . 'functions/page_header.php'); + if (@file_exists($theme[$theme_default]['PATH'])) { + @include ($theme[$theme_default]['PATH']); + } +} +require_once(SM_PATH . 'functions/plugin.php'); +require_once(SM_PATH . 'functions/strings.php'); +require_once(SM_PATH . 'functions/html.php'); -require_once('../src/validate.php'); -require_once('../functions/prefs.php'); -require_once('../functions/plugin.php'); +if($loggedin) { + /* 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); + } + } + } +} - // 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 (!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 (! isset($base_uri)) { - ereg ("(^.*/)[^/]+/[^/]+$", $PHP_SELF, $regs); - $base_uri = $regs[1]; - } +/* 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'); - setcookie('username', '', 0, $base_uri); - setcookie('key', '', 0, $base_uri); - session_destroy(); +do_hook('logout'); - if ($signout_page) { - header("Status: 303 See Other"); - header("Location: $signout_page"); - exit; /* we send no content if we're redirecting. */ - } +sqsession_destroy(); + +if ($signout_page) { + header('Status: 303 See Other'); + header("Location: $signout_page"); + exit; /* we send no content if we're redirecting. */ +} +?> + + + + - - + - + <?php echo $org_title . ' - ' . _("Signout"); ?> + + +

' . + _("Click here to log back in.") . '
' , + 'center' ) , + '', $color[4], 'width="100%"' ) . + html_tag( 'tr', + html_tag( 'td', '
', 'center' ) , + '', $color[0], 'width="100%"' ) , +'center', $color[4], 'width="50%" cols="1" cellpadding="2" cellspacing="0" border="0"' ) ?> -<?php echo $org_title ?> - Signout - - -

- - - - - - - - - - -
- -
- -
- - -

-
-
-
- - + +