Migration of stelzi's commit 1022 with some changes so we have a nicer code. See...
[mailer.git] / inc / fatal_errors.php
index a336a41483a0338234707ba2fdb839770ecc98f8..3ff6ec562ebf971879cc27dba211697d83f89d38 100644 (file)
  * -------------------------------------------------------------------- *
  * Kurzbeschreibung  : Gibt fatale Fehler aus                           *
  * -------------------------------------------------------------------- *
- *                                                                      *
+ * $Revision::                                                        $ *
+ * $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 - 2008 by Roland Haeder                           *
  * For more information visit: http://www.mxchange.org                  *
 
 // Some security stuff...
 if (!defined('__SECURITY')) {
-       $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php";
+       $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), '/inc') + 4) . '/security.php';
        require($INC);
 }
 
 if (getTotalFatalErrors() > 0) {
+       // Load config here
+       loadIncludeOnce('inc/load_config.php');
+
        // Main div container
-       LOAD_TEMPLATE("fatal_header");
+       LOAD_TEMPLATE('fatal_header');
 
        // Set unset variable
-       if (empty($check)) $check = "";
-       if (isInstalling()) {
+       if (empty($check)) $check = '';
+       if ((isInstalling()) || (!isInstalled())) {
                // While we are installing ouput other header than while it is installed... :-)
-               $OUT = "";
+               $OUT = '';
                foreach (getFatalArray() as $key => $value) {
                        // Prepare content for the template
                        $content = array(
@@ -54,14 +62,14 @@ if (getTotalFatalErrors() > 0) {
                        );
 
                        // Load row template
-                       $OUT .= LOAD_TEMPLATE("install_fatal_row", true, $content);
+                       $OUT .= LOAD_TEMPLATE('install_fatal_row', true, $content);
                }
 
                // Load main template
-               LOAD_TEMPLATE("install_fatal_table", false, $OUT);
-       } elseif (isBooleanConstantAndTrue('mxchange_installed')) {
+               LOAD_TEMPLATE('install_fatal_table', false, $OUT);
+       } elseif (isInstalled()) {
                // Display all runtime fatal errors
-               $OUT = "";
+               $OUT = '';
                foreach (getFatalArray() as $key => $value) {
                        // Prepare content for the template
                        $content = array(
@@ -70,26 +78,26 @@ if (getTotalFatalErrors() > 0) {
                        );
 
                        // Load row template
-                       $OUT .= LOAD_TEMPLATE("runtime_fatal_row", true, $content);
+                       $OUT .= LOAD_TEMPLATE('runtime_fatal_row', true, $content);
                }
 
                // Load main template
-               LOAD_TEMPLATE("runtime_fatal_table", false, $OUT);
+               LOAD_TEMPLATE('runtime_fatal_table', false, $OUT);
 
                // Abort here
-               exit;
+               shutdown();
        }
 
        // Message to regular users (non-admin)
        $CORR = getMessage('FATAL_REPORT_ERRORS');
 
        // PHP warnings fixed
-       if ($check == "done") {
+       if ($check == 'done') {
                if (IS_ADMIN()) $CORR = getMessage('FATAL_CORRECT_ERRORS');
        } // END - if
 
        // Load footer template
-       LOAD_TEMPLATE("fatal_footer", false, $CORR);
+       LOAD_TEMPLATE('fatal_footer', false, $CORR);
 }
 
 //