]> git.mxchange.org Git - mailer.git/blobdiff - modules.php
Some text made more clear
[mailer.git] / modules.php
index 9bddeb8a605553566b18f83ea36d4feddb246474..2b1b2acf75497a78a4f8f9fa8c6bd4d1e2d6cf35 100644 (file)
  * $Date::                                                            $ *
  * $Tag:: 0.2.1-FINAL                                                 $ *
  * $Author::                                                          $ *
- * Needs to be in all Files and every File needs "svn propset           *
- * svn:keywords Date Revision" (autoprobset!) at least!!!!!!            *
  * -------------------------------------------------------------------- *
  * Copyright (c) 2003 - 2009 by Roland Haeder                           *
- * Copyright (c) 2009, 2010 by Mailer Developer Team                    *
+ * Copyright (c) 2009 - 2011 by Mailer Developer Team                   *
  * For more information visit: http://www.mxchange.org                  *
  *                                                                      *
  * This program is free software; you can redistribute it and/or modify *
@@ -56,34 +54,29 @@ require('inc/config-global.php');
 // Set content type
 setContentType('text/html');
 
-// Fix missing module to 'index'
-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;
 $URL = '';
-$check = 'failed';
+
+// Init module state as 'failed' (always failed first)
+$moduleState = 'failed';
 
 // Is the maintenance mode active or goes all well?
-if ((isExtensionActive('maintenance')) && (getConfig('maintenance') == 'Y') && (!isAdmin()) && (getModule() != 'admin')) {
+if ((isExtensionActive('maintenance')) && (isMaintenanceEnabled()) && (!isAdmin()) && (getModule() != 'admin')) {
        // Maintain mode is active and you are no admin
-       addFatalMessage(__FILE__, __LINE__, getMessage('MAILER_DOWN_FOR_MAINTENANCE'));
+       addFatalMessage(__FILE__, __LINE__, '{--MAILER_DOWN_FOR_MAINTENANCE--}');
 } elseif ((SQL_IS_LINK_UP()) && (!ifFatalErrorsDetected())) {
        // Construct module name
        $GLOBALS['module_inc'] =  sprintf("inc/modules/%s.php", getModule());
 
        // Check module permission (again)
-       $check = checkModulePermissions();
-       switch ($check) {
+       $moduleState = checkModulePermissions();
+
+       // Which permission/error state do we have?
+       switch ($moduleState) {
                case 'cache_miss': // The cache is gone
                case 'admin_only': // Admin-only access
                case 'mem_only': // Member-only access
@@ -93,33 +86,50 @@ if ((isExtensionActive('maintenance')) && (getConfig('maintenance') == 'Y') && (
                                // Module is valid, active and located on the local disc...
                                $isModuleValid = true;
                        } elseif (!ifFatalErrorsDetected()) {
-                               // Module not found!
-                               addFatalMessage(__FILE__, __LINE__, getMaskedMessage('MODULE_REGISTRY_404', getModule()));
+                               // Set HTTP status
+                               setHttpStatus('404');
+
+                               // Module not found
+                               addFatalMessage(__FILE__, __LINE__, '{--MODULE_REGISTRY_404--}');
+
+                               // Set module to error module (non-existent!)
+                               setModule('error');
                        }
                        break;
 
                case '404':
-                       addFatalMessage(__FILE__, __LINE__, getMaskedMessage('MODULE_REGISTRY_404', getModule()));
+                       // Set HTTP status
+                       setHttpStatus('404');
+
+                       // Add fatal message
+                       addFatalMessage(__FILE__, __LINE__, '{--MODULE_REGISTRY_404--}');
                        break;
 
                case 'locked':
+                       // Set HTTP status
+                       setHttpStatus('403 FORBIDDEN');
+
                        if (!isIncludeReadable($GLOBALS['module_inc'])) {
+                               // Set HTTP status again
+                               setHttpStatus('404 NOT FOUND');
+
                                // Module does addionally not exists
-                               addFatalMessage(__FILE__, __LINE__, getMaskedMessage('MODULE_REGISTRY_404', getModule()));
+                               addFatalMessage(__FILE__, __LINE__, '{--MODULE_REGISTRY_404--}');
                        } // END - if
 
                        // Add fatal message
-                       addFatalMessage(__FILE__, __LINE__, getMaskedMessage('MODULE_IS_LOCKED', getModule()));
+                       addFatalMessage(__FILE__, __LINE__, '{--MODULE_REGISTRY_IS_LOCKED--}');
                        break;
 
                default:
-                       logDebugMessage(__FILE__, __LINE__, sprintf("Unknown status %s return from module check. Module=%s", $check, getModule()));
-                       addFatalMessage(__FILE__, __LINE__, getMaskedMessage('UNKNOWN_MODULE_STATUS', $check));
+                       // Unknown module status
+                       logDebugMessage(__FILE__, __LINE__, sprintf("Unknown status %s return from module check. Module=%s", $moduleState, getModule()));
+                       addFatalMessage(__FILE__, __LINE__, getMaskedMessage('UNKNOWN_MODULE_STATUS', $moduleState));
                        break;
        } // END - switch
 } elseif (!ifFatalErrorsDetected()) {
-       // MySQL problems detected
-       addFatalMessage(__FILE__, __LINE__, getMessage('MYSQL_ERRORS'));
+       // SQL problems detected
+       addFatalMessage(__FILE__, __LINE__, '{--MYSQL_ERRORS--}');
 }
 
 if (($isModuleValid === true) && (isset($GLOBALS['module_inc']))) {