wernis extension is now alpha code (only listing in admin area is missing), naming...
[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 (ereg(basename(__FILE__), $_SERVER['PHP_SELF'])) {
36         $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php";
37         require($INC);
38 } elseif (!EXT_IS_ACTIVE("sql_patches", true)) {
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         switch ($_GET['msg'])
52         {
53                 case CODE_LOGOUT_DONE      : $msg = LOGOUT_DONE; break;
54                 case CODE_LOGOUT_FAILED    : $msg = "<SPAN class=\"guest_failed\">".LOGOUT_FAILED."</SPAN>"; break;
55                 case CODE_DATA_INVALID     : $msg = MAIL_DATA_INVALID; break;
56                 case CODE_POSSIBLE_INVALID : $msg = MAIL_POSSIBLE_INVALID; break;
57                 case CODE_ACCOUNT_LOCKED   : $msg = MEMBER_ACCOUNT_LOCKED_UNC; break;
58                 case CODE_USER_404         : $msg = USER_NOT_FOUND; break;
59                 case CODE_STATS_404        : $msg = MAIL_STATS_404; break;
60                 case CODE_ALREADY_CONFIRMED: $msg = MAIL_ALREADY_CONFIRMED; break;
61                 case CODE_ERROR_MAILID     : if (EXT_IS_ACTIVE("mailid", true)) { $msg = ERROR_CONFIRMING_MAIL; } else { $msg = sprintf(EXTENSION_PROBLEM_NOT_INSTALLED, "mailid"); } break;
62                 case CODE_EXTENSION_PROBLEM: $msg = sprintf(EXTENSION_PROBLEM_EXT_INACTIVE, "mailid"); break;
63                 case CODE_COOKIES_DISABLED : $msg = LOGIN_NO_COOKIES; break;
64                 case CODE_BEG_SAME_AS_OWN  : $msg = BEG_SAME_UID_AS_OWN; break;
65                 case CODE_LOGIN_FAILED     : $msg = LOGIN_FAILED_GENERAL; break;
66                 default                    : $msg = UNKNOWN_MAILID_CODE_1.$_GET['msg'].UNKNOWN_MAILID_CODE_2; break;
67         }
68         LOAD_TEMPLATE("message", false, $msg);
69 }
70
71 // Some of you needs this to be extracted into a template... ???
72 LOAD_TEMPLATE("guest_menu_td");
73
74 // When no what value is provided take the "home" value
75 if (empty($GLOBALS['what'])) $GLOBALS['what'] = $_CONFIG['index_home'];
76
77 // Adding the main content module here
78 if (empty($GLOBALS['action']))
79 {
80         // Get action value from what value
81         $act = GET_ACTION("guest", $GLOBALS['what']);
82 }
83  else
84 {
85         // Get action value directly from URL
86         $act = COMPILE_CODE($GLOBALS['action']);
87 }
88
89 // Add the guest's menu here...
90 if (($_CONFIG['guest_menu'] == 'Y') || (!EXT_IS_ACTIVE("sql_patches", true)))
91 {
92         // Show only when guest menu is active
93         ADD_MENU("guest", $act, $GLOBALS['what']);
94 }
95
96 // TDs between menu and content
97 LOAD_TEMPLATE("guest_menu_content");
98
99 $INC_ACTION = sprintf(PATH."inc/modules/guest/action-%s.php", $act);
100 if ((file_exists($INC_ACTION)) && (is_readable($INC_ACTION)) && (VALIDATE_MENU_ACTION("guest", $act, $GLOBALS['what'])))
101 {
102         // Requested module is available so we load it
103         require_once($INC_ACTION);
104 }
105  else
106 {
107         // Invalid module specified or not found...
108         LOAD_URL("modules.php?module=index");
109 }
110
111 if (($_CONFIG['guest_menu'] == 'Y') || (!EXT_IS_ACTIVE("sql_patches", true)))
112 {
113         // TDs between content and </table>
114         LOAD_TEMPLATE("guest_content_footer");
115
116         // Some advertising stuff?
117         LOAD_TEMPLATE("guest_advert2");
118
119         OUTPUT_HTML("  </TD>
120 </TR>");
121
122         // Goto TOP template
123         LOAD_TEMPLATE("guest_goto_top");
124 }
125
126 // Footer template (Thanx to Mr. Glaus!)
127 LOAD_TEMPLATE("guest_footer");
128
129 //
130 ?>