X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=js%2Finstall-common.js;h=b7014e37a42659c156663e8d1883d3cc360a00cc;hp=2983c6543134cdd8036b6b7f78f8ab90f85af94c;hb=e9da1508b2a3ccbf63adc999981674740a47e074;hpb=74b7fbc5030bb2938a9859020876da63e6d15c0b diff --git a/js/install-common.js b/js/install-common.js index 2983c65431..b7014e37a4 100644 --- a/js/install-common.js +++ b/js/install-common.js @@ -1,13 +1,8 @@ /** * JavaScript for common installer functions * -------------------------------------------------------------------- - * $Revision:: $ - * $Date:: $ - * $Tag:: 0.2.1-FINAL $ - * $Author:: $ - * -------------------------------------------------------------------- * Copyright (c) 2003 - 2009 by Roland Haeder - * Copyright (c) 2009 - 2012 by Mailer Developer Team + * Copyright (c) 2009 - 2015 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 +22,95 @@ */ // 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 - doInstallationLoop(); + // 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 () { + // Reset counter + counterSuccess = 0; + // 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); }