X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=js%2Finstall-common.js;h=cb8af56acac7e947f6ad0e999cbb4603bc0a4947;hb=aa1a0daceccad5a92ed35a5096c9ffb27e1d4f92;hp=af478d30468f9565d2d5b0dd23b8e7a8855d973e;hpb=5db6eec1f733feda6977091029680a8b12396560;p=mailer.git diff --git a/js/install-common.js b/js/install-common.js index af478d3046..cb8af56aca 100644 --- a/js/install-common.js +++ b/js/install-common.js @@ -7,7 +7,7 @@ * $Author:: $ * -------------------------------------------------------------------- * Copyright (c) 2003 - 2009 by Roland Haeder - * Copyright (c) 2009 - 2012 by Mailer Developer Team + * Copyright (c) 2009 - 2013 by Mailer Developer Team * For more information visit: http://mxchange.org * * This program is free software; you can redistribute it and/or modify @@ -27,75 +27,92 @@ */ // Installation steps array -var installSteps = new Array(); +var installationSteps = new Array(); // Failed step var failedStep = ''; -var counterSuccess = 0; // Init all installation steps -installSteps[0] = 'import_tables_sql'; -installSteps[1] = 'import_menu_sql'; -installSteps[2] = 'write_local_config'; -installSteps[3] = 'install_extensions'; +installationSteps[0] = 'import_tables_sql'; +installationSteps[1] = 'import_menu_sql'; +installationSteps[2] = 'install_extensions'; +installationSteps[3] = 'register_first_admin'; + +// Always keep as last step +installationSteps[installationSteps.length] = 'write_local_config'; // Switches instaler by redirecting function switchInstaller (installer) { // Switch installer - document.location.href='install.php?installer=' + installer; + document.location.href = 'install.php?installer=' + installer; } // User has clicked on 'finish' function doFinishInstallation () { // First disable all buttons button - disableElement('input#next_page'); - disableElement('input#previous_page'); - disableElement('input#finish'); + resetFooterNavigation(); - // Display process window - displayProcessWindow('install', ''); + // Display progress window + displayProgressWindow('install', 'Init ...'); - // Start installation loop delayed - window.setTimeout("doInstallationLoop()", 500); + // Wait for window fader + $().ready(function () { + // Start installation loop delayed + window.setTimeout('doInstallationLoop()', 500); - // Is success counter same as array size - if (counterSuccess != installSteps.length) { - // Display error message - displayErrorWindow('install', getAjaxContent()); - } + // Wait here + $('body').delay(500); + }); } // Does the "installation loop" function doInstallationLoop () { // For-loop for all installation steps - for (var i = 0; i < installSteps.length; i++) { + for (var i = 0; i < installationSteps.length; i++) { // Output message - outputInstallationStepMessage(installSteps[i]); + outputInstallationStepMessage(installationSteps[i]); // Initialize next step - if (!sendInstallationStepRequest(installSteps[i]) == true) { + if (sendInstallationStepRequest(i) === false) { // Failed step, so remember it for later display - failedStep = installSteps[i]; + failedStep = installationSteps[i]; // Stop here break; - } - - // Did went okay - counterSuccess++; + } // END - if // Wait a little + $('body').delay(500); + + // Update progress bar + updateProgressBar(installationSteps.length); } // END - for + + // Is success counter same as array size + if (counterSuccess != installationSteps.length) { + // Display error message + displayErrorWindow('install', getAjaxContent() + ':' + counterSuccess + '/' + installationSteps.length + ':' + failedStep); + } else { + // Redirect to admin.php + document.location.href = 'admin.php'; + } } // Sends an "installation step" request out -function sendInstallationStepRequest (step) { +function sendInstallationStepRequest (i) { + // Is it set? + if (installationSteps[i] == undefined) { + // Not set installation step, so don't send it out + throw new 'installationSteps[' + i + '] is not set.'; + } // END - if + // Send out the request - return sendAjaxRequest('install', 'do_step', '&step=' + step, true); + return sendAjaxRequest('install', 'do_step', '&step=' + installationSteps[i], false); } // Outputs a "step message" function outputInstallationStepMessage (step) { // Set content - setProcessContent('install', step); + // @TODO Progress bar is out-of-order: + '
' + setProgressContent('install', step); }