Happy New Year
[squirrelmail.git] / src / signout.php
index 621f8b9ac1b995d3e7676fe8472cd03707e1da87..b3b5618242727d6ed2a485f3ed5a84b74dc897a8 100644 (file)
@@ -5,12 +5,15 @@
  *
  *  Cleans up after the user. Resets cookies and terminates session.
  *
- * @copyright © 1999-2006 The SquirrelMail Project Team
+ * @copyright 1999-2018 The SquirrelMail Project Team
  * @license http://opensource.org/licenses/gpl-license.php GNU Public License
  * @version $Id$
  * @package squirrelmail
  */
 
+/** This is the signout page */
+define('PAGE_NAME', 'signout');
+
 /**
  * Include the SquirrelMail initialization file.
  */
@@ -29,13 +32,9 @@ 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) ) {
-    $base_uri = sqm_baseuri();
-}
+$login_uri = 'login.php';
 
-do_hook('logout');
+do_hook('logout', $login_uri);
 
 sqsession_destroy();
 
@@ -49,23 +48,21 @@ if ($signout_page) {
 /* 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);
+    require_once(SM_PATH . 'class/template/Template.class.php');
+    $sTemplateID = Template::get_default_template_set();
+    $icon_theme_path = !$use_icons ? NULL : Template::calculate_template_images_directory($sTemplateID);
+    $oTemplate = Template::construct_template($sTemplateID);
 
     // We want some variables to always be available to the template
-    $always_include = array('sTplDir', 'icon_theme_path');
+    $oTemplate->assign('javascript_on', checkForJavascript());
+    $oTemplate->assign('base_uri', sqm_baseuri());
+    $always_include = array('sTemplateID', '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 */
@@ -74,6 +71,7 @@ set_up_language($squirrelmail_language, true, true);
 displayHtmlHeader($org_title . ' - ' . _("Signout"));
 
 $oTemplate->assign('frame_top', $frame_top);
+$oTemplate->assign('login_uri', $login_uri);
 
 $oTemplate->display('signout.tpl');