GigaPromo now fully integrated
[mailer.git] / modules.php
index dcc22657d4362df9c61d6d8832b4d415d8027e6e..7677838a0cb47d3b4362c032073cdb01f9938483 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 /************************************************************************
- * MXChange v0.2.1                                    Start: 08/25/2003 *
- * ===============                              Last change: 07/01/2005 *
+ * Mailer v0.2.1-FINAL                                Start: 08/25/2003 *
+ * ===================                          Last change: 07/01/2005 *
  *                                                                      *
  * -------------------------------------------------------------------- *
  * File              : modules.php                                      *
@@ -17,7 +17,7 @@
  * Needs to be in all Files and every File needs "svn propset           *
  * svn:keywords Date Revision" (autoprobset!) at least!!!!!!            *
  * -------------------------------------------------------------------- *
- * Copyright (c) 2003 - 2008 by Roland Haeder                           *
+ * Copyright (c) 2003 - 2009 by Roland Haeder                           *
  * For more information visit: http://www.mxchange.org                  *
  *                                                                      *
  * This program is free software; you can redistribute it and/or modify *
@@ -37,7 +37,7 @@
  ************************************************************************/
 
 // XDEBUG call
-//xdebug_start_trace();
+//* DEBUG: */ xdebug_start_trace();
 
 // Load security stuff here
 require('inc/libs/security_functions.php');
@@ -46,117 +46,88 @@ require('inc/libs/security_functions.php');
 $GLOBALS['startTime'] = microtime(true);
 
 // Init output mode and module
-$GLOBALS['output_mode'] = 0;
-$GLOBALS['module'] = '';
+$GLOBALS['output_mode'] = '0';
+$GLOBALS['module'] = 'unknown';
 
 // Needed include files
 require('inc/config-global.php');
 
+// Set content type
+setContentType('text/html');
+
 // Fix missing module to 'index'
-if (!REQUEST_ISSET_GET('module')) REQUEST_SET_GET('module', 'index');
-
-// Check if logged in
-if (IS_MEMBER()) {
-       // Is still logged in so we welcome him with his name
-       $result = SQL_QUERY_ESC("SELECT `surname`, `family` FROM `{!_MYSQL_PREFIX!}_user_data` WHERE `userid`=%s LIMIT 1",
-               array(getUserId()), __FILE__, __LINE__);
-       if (SQL_NUMROWS($result) == 1) {
-               // Load surname and family's name and build the username
-               list($s, $f) = SQL_FETCHROW($result);
-               $username = $s . ' ' . $f;
-
-               // Additionally admin?
-               if (IS_ADMIN()) {
-                       // Add it
-                       $username .= ' ({--_ADMIN_SHORT--})';
-               } // END - if
-       } else {
-               // Hmmm, logged in and no valid userid?
-               $username = '<em>{--_UNKNOWN--}</em>';
-
-               // Destroy session
-               destroyUserSession();
-
-               // Kill userid
-               setUserId(0);
-       }
-
-       // Free memory
-       SQL_FREERESULT($result);
-} elseif (IS_ADMIN()) {
-       // Admin is there
-       $username = getMessage('_ADMIN');
-} else {
-       // He's a guest, hello there... ;-)
-       $username = getMessage('_GUEST');
-}
+if (!isGetRequestParameterSet('module')) {
+       // Set element
+       setGetRequestParameter('module', 'index');
+
+       // ... and module
+       setModule('index');
+} // END - if
 
 // The header file
 loadIncludeOnce('inc/header.php');
 
 // Modules are by default not valid!
-$isModuleValid = false; $check = 'failed';
-if ((getConfig('maintenance') == 'Y') && (!IS_ADMIN()) && (getModule() != 'admin')) {
+$isModuleValid = false;
+$URL = '';
+$check = 'failed';
+
+// Is the maintenance mode active or goes all well?
+if ((isExtensionActive('maintenance')) && (getConfig('maintenance') == 'Y') && (!isAdmin()) && (getModule() != 'admin')) {
        // Maintain mode is active and you are no admin
        addFatalMessage(__FILE__, __LINE__, getMessage('LANG_DOWN_MAINTAINCE'));
-} elseif ((SQL_IS_LINK_UP()) && (getTotalFatalErrors() == 0)) {
+} elseif ((SQL_IS_LINK_UP()) && (getTotalFatalErrors() == '0')) {
        // Construct module name
-       $GLOBALS['module_inc'] =  sprintf("inc/modules/%s.php", SQL_ESCAPE(getModule()));
+       $GLOBALS['module_inc'] =  sprintf("inc/modules/%s.php", getModule());
 
-       // Did we found the module listed in allowed modules and are we successfully connected?
-       $check = checkModulePermissions(getModule());
+       // Check module permission (again)
+       $check = checkModulePermissions();
        switch ($check) {
                case 'cache_miss': // The cache is gone
                case 'admin_only': // Admin-only access
                case 'mem_only': // Member-only access
                case 'done': // All fine!
                        // Does the module exists on local file system?
-                       if ((isFileReadable($GLOBALS['module_inc'])) && (getTotalFatalErrors() == 0)) {
+                       if ((isIncludeReadable($GLOBALS['module_inc'])) && (getTotalFatalErrors() == '0')) {
                                // Module is valid, active and located on the local disc...
                                $isModuleValid = true;
-                       } elseif (!empty($URL)) {
-                               // An URL was specified so we load the de-referrer module
-                               redirectToUrl(DEREFERER($URL));
-                       } elseif (getTotalFatalErrors() == 0) {
-                               addFatalMessage(__FILE__, __LINE__, sprintf(getMessage('LANG_MOD_REG_404'), getModule()));
+                       } elseif (getTotalFatalErrors() == '0') {
+                               // Module not found!
+                               addFatalMessage(__FILE__, __LINE__, getMaskedMessage('LANG_MOD_REG_404', getModule()));
                        }
                        break;
 
                case '404':
-                       addFatalMessage(__FILE__, __LINE__, sprintf(getMessage('LANG_MOD_REG_404'), getModule()));
+                       addFatalMessage(__FILE__, __LINE__, getMaskedMessage('LANG_MOD_REG_404', getModule()));
                        break;
 
                case 'locked':
-                       if (!isFileReadable($GLOBALS['module_inc'])) {
+                       if (!isIncludeReadable($GLOBALS['module_inc'])) {
                                // Module does addionally not exists
-                               addFatalMessage(__FILE__, __LINE__, sprintf(getMessage('LANG_MOD_REG_404'), getModule()));
+                               addFatalMessage(__FILE__, __LINE__, getMaskedMessage('LANG_MOD_REG_404', getModule()));
                        } // END - if
 
                        // Add fatal message
-                       addFatalMessage(__FILE__, __LINE__, sprintf(getMessage('LANG_MOD_REG_LOCKED'), getModule()));
+                       addFatalMessage(__FILE__, __LINE__, getMaskedMessage('LANG_MOD_REG_LOCKED', getModule()));
                        break;
 
                default:
-                       DEBUG_LOG(__FILE__, __LINE__, sprintf("Unknown status %s return from module check. Module=%s", $check, getModule()));
-                       addFatalMessage(__FILE__, __LINE__, sprintf(getMessage('LANG_MOD_REG_UNKNOWN'), $check));
+                       logDebugMessage(__FILE__, __LINE__, sprintf("Unknown status %s return from module check. Module=%s", $check, getModule()));
+                       addFatalMessage(__FILE__, __LINE__, getMaskedMessage('LANG_MOD_REG_UNKNOWN', $check));
                        break;
-       }
-} elseif (getTotalFatalErrors() == 0) {
+       } // END - switch
+} elseif (getTotalFatalErrors() == '0') {
        // MySQL problems!
        addFatalMessage(__FILE__, __LINE__, getMessage('MYSQL_ERRORS'));
 }
 
 if (($isModuleValid === true) && (isset($GLOBALS['module_inc']))) {
-       /////////////////////////////////////////////
-       // Main including line DO NOT REMOVE/EDIT! //
-       /////////////////////////////////////////////
-       //
        // Everything is okay so we can load the module
        loadIncludeOnce($GLOBALS['module_inc']);
 } // END - if
 
-// Next-to-end add the footer
+// Add the footer (this will call shutdown())
 loadIncludeOnce('inc/footer.php');
 
-//
+// [EOF]
 ?>