Password reset for admin login added (still buggy if cache is installed and sql_patch...
[mailer.git] / inc / header.php
1 <?php
2 /************************************************************************
3  * MXChange v0.2.1                                    Start: 08/25/2003 *
4  * ===============                              Last change: 11/24/2004 *
5  *                                                                      *
6  * -------------------------------------------------------------------- *
7  * File              : header.php                                       *
8  * -------------------------------------------------------------------- *
9  * Short description : Outputs header HTML code, will not when frameset *
10  *           is active                                                  *
11  * -------------------------------------------------------------------- *
12  * Kurzbeschreibung  : Gibt nur dann HTML-Code fuer den Kopf-Bereich    *
13  *           aus, wenn Frameset nicht aktiv ist                         *
14  * -------------------------------------------------------------------- *
15  *                                                                      *
16  * -------------------------------------------------------------------- *
17  * Copyright (c) 2003 - 2008 by Roland Haeder                           *
18  * For more information visit: http://www.mxchange.org                  *
19  *                                                                      *
20  * This program is free software; you can redistribute it and/or modify *
21  * it under the terms of the GNU General Public License as published by *
22  * the Free Software Foundation; either version 2 of the License, or    *
23  * (at your option) any later version.                                  *
24  *                                                                      *
25  * This program is distributed in the hope that it will be useful,      *
26  * but WITHOUT ANY WARRANTY; without even the implied warranty of       *
27  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the        *
28  * GNU General Public License for more details.                         *
29  *                                                                      *
30  * You should have received a copy of the GNU General Public License    *
31  * along with this program; if not, write to the Free Software          *
32  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,               *
33  * MA  02110-1301  USA                                                  *
34  ************************************************************************/
35
36 // Some security stuff...
37 if (ereg(basename(__FILE__), $_SERVER['PHP_SELF'])) {
38         $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php";
39         require($INC);
40 }
41
42 // Initialize variables
43 if (!isset($header)) $header = 0;
44
45 if (($header != "1") && ($header != "2")) {
46         // If not in CSS mode generate the header
47         if (($CSS != "1")) {
48                 // Generate header
49                 $TITLE = "";
50
51                 // Add title decorations? (left)
52                 if (!defined('__PAGE_TITLE')) {
53                         if ((count($_CONFIG) > 1) && (is_resource($link)) && (isset($db))) {
54                                 if (($_CONFIG['enable_title_deco'] == "Y") && (trim(!empty($_CONFIG['title_left'])))) $TITLE .= trim($_CONFIG['title_left'])." ";
55                                 $TITLE .= MAIN_TITLE;
56
57                                 // Add title of module? (middle decoration will also be added!)
58                                 if (isset($_CONFIG['enable_mod_title'])) {
59                                         if (($_CONFIG['enable_mod_title'] == "Y") || ((empty($GLOBALS['what'])) && (empty($GLOBALS['action']))) || ($GLOBALS['module'] == "admin")) $TITLE .= " ".trim($_CONFIG['title_middle'])." ".ADD_MODULE_TITLE($GLOBALS['module']);
60                                 } // END - if
61
62                                 // Add title from what file
63                                 $MODE = "";
64                                 if ($GLOBALS['module'] == "login") $MODE = "member";
65                                  elseif ($GLOBALS['module'] == "index") $MODE = "guest";
66                                 if ((!empty($MODE)) && (isset($_CONFIG['enable_what_title'])) && ($_CONFIG['enable_what_title'] == "Y")) $TITLE .= " ".trim($_CONFIG['title_middle'])." ".GET_MOD_DESCR($MODE, $GLOBALS['what']);
67
68                                 // Add title decorations? (right)
69                                 if (($_CONFIG['enable_title_deco'] == "Y") && (!empty($_CONFIG['title_right']))) $TITLE .= " ".trim($_CONFIG['title_right']);
70
71                                 // Remember title in constant for the template
72                                 define('__PAGE_TITLE', html_entity_decode($TITLE));
73                         } elseif ((!isBooleanConstantAndTrue('mxchange_installed')) || (!isBooleanConstantAndTrue('admin_registered'))) {
74                                 // Load language file because it was missing in installation finalizer step... *sigh*
75                                 require_once(sprintf("%sinc/language/install_%s.php",
76                                         PATH,
77                                         GET_LANGUAGE()
78                                 ));
79
80                                 // Installation mode
81                                 define('__PAGE_TITLE', INSTALLATION_OF_MXCHANGE);
82                         } else {
83                                 // Configuration not found!
84                                 define('__PAGE_TITLE', NO_CONFIG_FOUND_TITLE);
85
86                                 // Do not add the fatal message in installation mode
87                                 if (basename($_SERVER['SELF']) != "install.php") ADD_FATAL(NO_CONFIG_FOUND);
88                         }
89                 }
90
91                 // Save some little memory
92                 unset($TITLE);
93
94                 // Output page header code
95                 LOAD_TEMPLATE("page_header");
96
97                 // Include meta data here
98                 LOAD_TEMPLATE("metadata");
99
100                 // Add meta description to header
101                 if ((isBooleanConstantAndTrue('mxchange_installed')) && (isBooleanConstantAndTrue('admin_registered')) && ($GLOBALS['module'] != "admin") && ($GLOBALS['module'] != "login") && (isset($db)) && (isset($link))) {
102                         // Add meta description not in admin and login module and when the script is installed
103                         META_DESCRIPTION($GLOBALS['module'], $GLOBALS['what']);
104                 }
105
106                 // Include more header data here
107                 LOAD_TEMPLATE("header");
108
109                 // Include stylesheet
110                 include (PATH."inc/stylesheet.php");
111         }
112
113         // Closing HEAD tag
114         if ($CSS != "1") OUTPUT_HTML("</HEAD>");
115         $header = 1;
116 }
117
118 // Set unsetted variables
119 if (empty($_GET['frame'])) $_GET['frame'] = "";
120
121 // Load body or not
122 if ((($GLOBALS['module'] != "frametester")) || (($header == "1") && ($GLOBALS['module'] == "frametester") && (!empty($_GET['frame']))) && ($CSS != "1")) {
123         // Is the header sent and the script is not the mail confirmation script and not a CSS?
124         if (($header == "1") && (basename($_SERVER['PHP_SELF']) != "mailid.php") && ($CSS != "1")) {
125                 // Add BODY tag
126                 LOAD_TEMPLATE("page_body");
127                 $header = 2;
128         }
129 }
130
131 //
132 ?>