X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=src%2Fsignout.php;h=621f8b9ac1b995d3e7676fe8472cd03707e1da87;hb=918fcc1d131a60df5ba01212d61d82d753014468;hp=cc2f60745edb955bc842d44014c6b394b688d7d5;hpb=151562a780a0919b32e04d204ba7f33fb215bd84;p=squirrelmail.git diff --git a/src/signout.php b/src/signout.php index cc2f6074..621f8b9a 100644 --- a/src/signout.php +++ b/src/signout.php @@ -12,16 +12,9 @@ */ /** - * Path for SquirrelMail required files. - * @ignore + * Include the SquirrelMail initialization file. */ -define('SM_PATH','../'); - -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'); +require('../include/init.php'); /* Erase any lingering attachments */ sqgetGlobalVar('compose_messages', $compose_messages, SQ_SESSION); @@ -39,7 +32,6 @@ if (!isset($frame_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(); } @@ -48,50 +40,42 @@ do_hook('logout'); sqsession_destroy(); if ($signout_page) { - header('Status: 303 See Other'); + // Status 303 header is disabled. PHP fastcgi bug. See 1.91 changelog. + //header('Status: 303 See Other'); header("Location: $signout_page"); exit; /* we send no content if we're redirecting. */ } +/* After a reload of signout.php, $oTemplate might not exist anymore. + * Recover, so that we don't get all kinds of errors in that situation. */ +if ( !isset($oTemplate) || !is_object($oTemplate) ) { + require_once(SM_PATH . 'class/template/template.class.php'); + $aTemplateSet = ( !isset($aTemplateSet) ? array() : $aTemplateSet ); + $templateset_default = ( !isset($templateset_default) ? 0 : $templateset_default ); + + $sTplDir = !isset($aTemplateSet[$templateset_default]['PATH']) ? SM_PATH . 'templates/default/' : $aTemplateSet[$templateset_default]['PATH']; + $icon_theme_path = !$use_icons ? NULL : $sTplDir . 'images/'; + $oTemplate = new Template($sTplDir); + + // We want some variables to always be available to the template + $always_include = array('sTplDir', 'icon_theme_path'); + foreach ($always_include as $var) { + $oTemplate->assign($var, (isset($$var) ? $$var : NULL)); + } +} + +// The error handler object is probably also not initialized on a refresh +require_once(SM_PATH . 'class/error.class.php'); +$oErrorHandler = new ErrorHandler($oTemplate,'error_message.tpl'); + /* internal gettext functions will fail, if language is not set */ set_up_language($squirrelmail_language, true, true); -?> - - - - - - - - <?php echo $org_title . ' - ' . _("Signout"); ?> - - -

-' . - _("Click here to log back in.") . '
' , - 'center' ) , - '', $color[4] ) . - html_tag( 'tr', - html_tag( 'td', '
', 'center' ) , - '', $color[0] ) , -'center', $color[4], 'width="50%" cellpadding="2" cellspacing="0" border="0"' ); + +displayHtmlHeader($org_title . ' - ' . _("Signout")); + +$oTemplate->assign('frame_top', $frame_top); + +$oTemplate->display('signout.tpl'); $oTemplate->display('footer.tpl'); -?> +