]> git.mxchange.org Git - mailer.git/blobdiff - inc/install-inc.php
Several rewrites/renames, fixes for installation. Resolves #104
[mailer.git] / inc / install-inc.php
index a6fbd91f2b21ac8c7951b2bc015e29537ec90989..d0283dfcfde28cee4c2686b6c06e2d9baa19b2cf 100644 (file)
@@ -41,6 +41,9 @@ if (!defined('__SECURITY')) {
        require($INC);
 }
 
+// Load sql_patches here
+LOAD_EXTENSION("sql_patches");
+
 // Init variables
 $mysql = "";
 if ((REQUEST_ISSET_POST(('mysql'))) && (is_array(REQUEST_POST('mysql')))) $mysql = REQUEST_POST('mysql');
@@ -74,7 +77,7 @@ if ((REQUEST_ISSET_GET(('page')) && (REQUEST_GET('page') == 5))) {
 } // END - if
 
 // Is MXChange installed or no admin registered so far?
-if ((!isBooleanConstantAndTrue('mxchange_installed')) || (!isBooleanConstantAndTrue('admin_registered')))
+if ((!isInstalled()) || (!isAdminRegistered()))
 {
        // Set URL for FORM actions
        define('__BURL_ACTION', constant('URL'));
@@ -99,7 +102,7 @@ if ((!isBooleanConstantAndTrue('mxchange_installed')) || (!isBooleanConstantAndT
                if (empty($mysql['prefix'])) $mysql['prefix'] = "mxchange_";
                if (getTotalFatalErrors() > 0) {
                        OUTPUT_HTML("<span class=\"install_fatal\">");
-                       foreach ($FATAL as $key => $err) {
+                       foreach (getFatalArray() as $key => $err) {
                                OUTPUT_HTML("  <strong>&middot;</strong>&nbsp;{--FATAL_NO--}".($key + 1).":&nbsp;".$err."<br />");
                        }
                        OUTPUT_HTML("</span><br />");
@@ -264,9 +267,9 @@ if ((!isBooleanConstantAndTrue('mxchange_installed')) || (!isBooleanConstantAndT
                break;
 
        case "finalize": // Write captured data to files
-               if ((REQUEST_ISSET_POST(('finalize'))) && (!isBooleanConstantAndTrue('mxchange_installed'))) {
+               if ((REQUEST_ISSET_POST(('finalize'))) && (!isInstalled())) {
                        // You have submitted data then we have to reset the fatal messages
-                       $SQLs = array();
+                       INIT_SQLS();
 
                        // Connect to MySQL server
                        SQL_CONNECT($mysql['host'], $mysql['login'], $mysql['pass1'], __FILE__, __LINE__);
@@ -281,10 +284,10 @@ if ((!isBooleanConstantAndTrue('mxchange_installed')) || (!isBooleanConstantAndT
                                                        $FQFN = secureString(REQUEST_POST('spath')) . "install/" . $dump;
                                                        if (FILE_READABLE($FQFN)) {
                                                                // Read the file
-                                                               $SQLs = READ_FILE($FQFN, true);
+                                                               $fileContent = READ_FILE($FQFN, true);
 
                                                                // And split it up against ;\n ...
-                                                               $SQLs = merge_array($SQLs, explode(";\n", $sql));
+                                                               SET_SQLS(merge_array(GET_SQLS(), explode(";\n", $fileContent)));
                                                        } else {
                                                                // Not readable!
                                                                debug_report_bug(sprintf("SQL dump %s is not readable!", $dump));
@@ -292,23 +295,14 @@ if ((!isBooleanConstantAndTrue('mxchange_installed')) || (!isBooleanConstantAndT
                                                } // END - foreach
 
                                                // Are some SQLs found?
-                                               if (count($SQLs) == 0) {
+                                               if (COUNT_SQLS() == 0) {
                                                        // Abort here
-                                                       addFatalMessage(getMessage('INSTALL_SQL_IMPORT_FAILED'));
+                                                       addFatalMessage(__FILE__, __LINE__, getMessage('INSTALL_SQL_IMPORT_FAILED'));
                                                        return;
                                                } // END - if
 
                                                // Now run all queries through and try to keep out empty or comment queries
-                                               foreach ($SQLs as $sql) {
-                                                       // Trim spaces away
-                                                       $sql = trim($sql);
-
-                                                       // Is this query not empty and not a comment?
-                                                       if ((!empty($sql)) && (substr($sql, 0, 2) != "--") && (substr($sql, 0, 1) != "#")) {
-                                                               // Then run it!
-                                                               SQL_QUERY($sql, __FILE__, __LINE__);
-                                                       } // END - if
-                                               } // END - foreach
+                                               runFilterChain('run_sqls');
 
                                                // Ok, all done. So we can write the config data to the php files
                                                if (REQUEST_POST('spath') != constant('PATH')) changeDataInFile(REQUEST_POST('spath')."inc/config.php", "SERVER-PATH", "define('PATH', \"", "\");", REQUEST_POST('spath'), 0);
@@ -331,14 +325,14 @@ if ((!isBooleanConstantAndTrue('mxchange_installed')) || (!isBooleanConstantAndT
                                                changeDataInFile(REQUEST_POST('spath')."inc/config.php", "INSTALLED", "define('mxchange_installed', ", ");", "true", 0);
                                        } else {
                                                // Installation area not found!
-                                               addFatalMessage(getMessage('INSTALL_MISSING_DUMPS'));
+                                               addFatalMessage(__FILE__, __LINE__, getMessage('INSTALL_MISSING_DUMPS'));
                                        }
                                } // END - if
                        } // END - if
 
                        if (getTotalFatalErrors() > 0) {
                                $OUT = "";
-                               foreach ($FATAL as $value) {
+                               foreach (getFatalArray() as $value) {
                                        $OUT .= "    <li>".$value."</li>\n";
                                } // END foreach
                                define('__FATAL_ERROR_LI', $OUT);
@@ -360,12 +354,12 @@ if ((!isBooleanConstantAndTrue('mxchange_installed')) || (!isBooleanConstantAndT
                                // Installation is done!
                                LOAD_URL("install.php?page=finalize");
                        }
-               } elseif (isBooleanConstantAndTrue('mxchange_installed')) {
+               } elseif (isInstalled()) {
                        // Redirection after writing data... :-)
                        LOAD_TEMPLATE("install_finished");
                } else {
                        // Something goes wrong during installation! :-(
-                       addFatalMessage(getMessage('INSTALL_FINALIZER_FAILED'));
+                       addFatalMessage(__FILE__, __LINE__, getMessage('INSTALL_FINALIZER_FAILED'));
                        LOAD_INC("inc/fatal_errors.php");
                }
                break;
@@ -377,7 +371,7 @@ if ((!isBooleanConstantAndTrue('mxchange_installed')) || (!isBooleanConstantAndT
        }
 } else {
        // Already installed!
-       addFatalMessage(getMessage('ALREADY_INSTALLED'));
+       addFatalMessage(__FILE__, __LINE__, getMessage('ALREADY_INSTALLED'));
 }
 
 //