Several bugfixes, getMessage() introduced
[mailer.git] / inc / modules / index.php
1 <?php
2 /************************************************************************
3  * MXChange v0.2.1                                    Start: 09/23/2003 *
4  * ===============                              Last change: 03/27/2004 *
5  *                                                                      *
6  * -------------------------------------------------------------------- *
7  * File              : index.php                                        *
8  * -------------------------------------------------------------------- *
9  * Short description : Entrance page                                    *
10  * -------------------------------------------------------------------- *
11  * Kurzbeschreibung  : Eingangsseite                                    *
12  * -------------------------------------------------------------------- *
13  *                                                                      *
14  * -------------------------------------------------------------------- *
15  * Copyright (c) 2003 - 2008 by Roland Haeder                           *
16  * For more information visit: http://www.mxchange.org                  *
17  *                                                                      *
18  * This program is free software; you can redistribute it and/or modify *
19  * it under the terms of the GNU General Public License as published by *
20  * the Free Software Foundation; either version 2 of the License, or    *
21  * (at your option) any later version.                                  *
22  *                                                                      *
23  * This program is distributed in the hope that it will be useful,      *
24  * but WITHOUT ANY WARRANTY; without even the implied warranty of       *
25  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the        *
26  * GNU General Public License for more details.                         *
27  *                                                                      *
28  * You should have received a copy of the GNU General Public License    *
29  * along with this program; if not, write to the Free Software          *
30  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,               *
31  * MA  02110-1301  USA                                                  *
32  ************************************************************************/
33
34 // Some security stuff...
35 if (!defined('__SECURITY')) {
36         $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php";
37         require($INC);
38 } elseif ((!EXT_IS_ACTIVE("sql_patches", true)) && (!IS_ADMIN())) {
39         // The extension "sql_patches" *MUST* be activated or you have lot's of problems!
40         LOAD_URL("modules.php?module=admin");
41 }
42
43 // Load adverstising template
44 define('__GUEST_ADVERT', LOAD_TEMPLATE("guest_advert", true));
45
46 // Generate a tableset for the menu title and content
47 LOAD_TEMPLATE("guest_header");
48
49 // Add message here
50 if (!empty($_GET['msg'])) {
51         // Default extension is "unknown"
52         $ext = "unknown";
53
54         // Is extension given?
55         if (!empty($_GET['ext'])) $ext = SQL_ESCAPE($_GET['ext']);
56
57         // Which message shall we output?
58         switch ($_GET['msg']) {
59                 case CODE_LOGOUT_DONE      : $msg = LOGOUT_DONE; break;
60                 case CODE_LOGOUT_FAILED    : $msg = "<SPAN class=\"guest_failed\">".LOGOUT_FAILED."</SPAN>"; break;
61                 case CODE_DATA_INVALID     : $msg = MAIL_DATA_INVALID; break;
62                 case CODE_POSSIBLE_INVALID : $msg = MAIL_POSSIBLE_INVALID; break;
63                 case CODE_ACCOUNT_LOCKED   : $msg = MEMBER_ACCOUNT_LOCKED_UNC; break;
64                 case CODE_USER_404         : $msg = USER_NOT_FOUND; break;
65                 case CODE_STATS_404        : $msg = MAIL_STATS_404; break;
66                 case CODE_ALREADY_CONFIRMED: $msg = MAIL_ALREADY_CONFIRMED; break;
67
68                 case CODE_ERROR_MAILID:
69                         if (EXT_IS_ACTIVE($ext, true)) { $msg = ERROR_CONFIRMING_MAIL; } else { $msg = sprintf(EXTENSION_PROBLEM_NOT_INSTALLED, "mailid"); }
70                         break;
71
72                 case CODE_EXTENSION_PROBLEM:
73                         $msg = sprintf(EXTENSION_PROBLEM_EXT_INACTIVE, $ext);
74                         break;
75
76                 case CODE_COOKIES_DISABLED : $msg = LOGIN_NO_COOKIES; break;
77                 case CODE_BEG_SAME_AS_OWN  : $msg = BEG_SAME_UID_AS_OWN; break;
78                 case CODE_LOGIN_FAILED     : $msg = LOGIN_FAILED_GENERAL; break;
79                 default                    : $msg = UNKNOWN_MAILID_CODE_1.$_GET['msg'].UNKNOWN_MAILID_CODE_2; break;
80         } // END - switch
81
82         // Load message template
83         LOAD_TEMPLATE("message", false, $msg);
84 } // END - if
85
86 // Some of you needs this to be extracted into a template... ???
87 LOAD_TEMPLATE("guest_menu_td");
88
89 // When no what value is provided take the "home" value
90 if (empty($GLOBALS['what'])) $GLOBALS['what'] = getConfig('index_home');
91
92 // Adding the main content module here
93 if (empty($GLOBALS['action'])) {
94         // Get action value from what value
95         $GLOBALS['action'] = GET_ACTION("guest", $GLOBALS['what']);
96 } // END - if
97
98 // Get action value directly from URL
99 $act = COMPILE_CODE($GLOBALS['action']);
100
101 // Add the guest's menu here...
102 if ((getConfig('guest_menu') == "Y") || (!EXT_IS_ACTIVE("sql_patches", true))) {
103         // Show only when guest menu is active
104         ADD_MENU("guest", $act, $GLOBALS['what']);
105 } // END - if
106
107 // TDs between menu and content
108 LOAD_TEMPLATE("guest_menu_content");
109
110 // Disable block-mode by default
111 $BLOCK_MODE = false;
112
113 $INC_ACTION = sprintf("%sinc/modules/guest/action-%s.php", PATH, $act);
114 if ((FILE_READABLE($INC_ACTION)) && (VALIDATE_MENU_ACTION("guest", $act, $GLOBALS['what']))) {
115         // Requested module is available so we load it
116         require_once($INC_ACTION);
117 } else {
118         // Invalid module specified or not found...
119         LOAD_URL("modules.php?module=index");
120 }
121
122 if ((getConfig('guest_menu') == "Y") || (!EXT_IS_ACTIVE("sql_patches", true))) {
123         // Right side of content (hint: a good place for 120x600 skyscraper banner!)
124         LOAD_TEMPLATE("guest_content_footer");
125
126         // Some advertising stuff?
127         LOAD_TEMPLATE("guest_advert2");
128
129         OUTPUT_HTML("  </TD>
130 </TR>");
131
132         // Goto TOP template
133         LOAD_TEMPLATE("guest_goto_top");
134 } // END - if
135
136 // Footer template (Thanx to Mr. Glaus!)
137 LOAD_TEMPLATE("guest_footer");
138
139 //
140 ?>