From a6d2edbe9972b4f1a8cb45f26a0c4db051ef90ef Mon Sep 17 00:00:00 2001 From: Markus Hoelzle <typo3@markus-hoelzle.de> Date: Fri, 8 Sep 2017 18:19:59 +0200 Subject: [PATCH] [TASK] Install tool: Improve ajax error handling Show an error message if the server answer ajax calls with http status code 200. This could happen if a proxy responses to the http request or a network failures occures. Releases: master Resolves: #82388 Change-Id: Ie91832dde42c7d17323be084cfaf67cc98de8535 Reviewed-on: https://review.typo3.org/54035 Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de> Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de> Tested-by: TYPO3com <no-reply@typo3.com> Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch> Tested-by: Christian Kuhn <lolli@schwarzbu.ch> --- .../Public/JavaScript/Modules/Cache.js | 3 ++ .../Modules/ChangeInstallToolPassword.js | 3 ++ .../Public/JavaScript/Modules/ClearTables.js | 10 +++++++ .../JavaScript/Modules/ClearTypo3tempFiles.js | 3 ++ .../Public/JavaScript/Modules/CreateAdmin.js | 3 ++ .../JavaScript/Modules/DatabaseAnalyzer.js | 3 ++ .../Public/JavaScript/Modules/DumpAutoload.js | 3 ++ .../JavaScript/Modules/EnvironmentCheck.js | 3 ++ .../JavaScript/Modules/ExtensionScanner.js | 5 +++- .../JavaScript/Modules/FolderStructure.js | 3 ++ .../JavaScript/Modules/LocalConfiguration.js | 3 ++ .../Public/JavaScript/Modules/MailTest.js | 3 ++ .../Public/JavaScript/Modules/Presets.js | 3 ++ .../JavaScript/Modules/ResetBackendUserUc.js | 3 ++ .../JavaScript/Modules/SystemMaintainer.js | 3 ++ .../JavaScript/Modules/TcaExtTablesCheck.js | 3 ++ .../JavaScript/Modules/TcaMigrationsCheck.js | 3 ++ .../JavaScript/Modules/UpgradeWizards.js | 29 +++++++++++++++++++ 18 files changed, 88 insertions(+), 1 deletion(-) diff --git a/typo3/sysext/install/Resources/Public/JavaScript/Modules/Cache.js b/typo3/sysext/install/Resources/Public/JavaScript/Modules/Cache.js index eb071d9a8d22..f2802740969c 100644 --- a/typo3/sysext/install/Resources/Public/JavaScript/Modules/Cache.js +++ b/typo3/sysext/install/Resources/Public/JavaScript/Modules/Cache.js @@ -49,6 +49,9 @@ define(['jquery', 'TYPO3/CMS/Install/FlashMessage', 'TYPO3/CMS/Install/ProgressB $outputContainer.append(message); })); } + } else { + var message = FlashMessage.render(Severity.error, 'Something went wrong', ''); + $outputContainer.empty().html(message); } }, error: function() { diff --git a/typo3/sysext/install/Resources/Public/JavaScript/Modules/ChangeInstallToolPassword.js b/typo3/sysext/install/Resources/Public/JavaScript/Modules/ChangeInstallToolPassword.js index 0f518e0deaa6..c8bb85a9b200 100644 --- a/typo3/sysext/install/Resources/Public/JavaScript/Modules/ChangeInstallToolPassword.js +++ b/typo3/sysext/install/Resources/Public/JavaScript/Modules/ChangeInstallToolPassword.js @@ -55,6 +55,9 @@ define(['jquery', 'TYPO3/CMS/Install/FlashMessage', 'TYPO3/CMS/Install/ProgressB var message = InfoBox.render(element.severity, element.title, element.message); $outputContainer.append(message); }); + } else { + var message = FlashMessage.render(Severity.error, 'Something went wrong', ''); + $outputContainer.empty().html(message); } }, error: function() { diff --git a/typo3/sysext/install/Resources/Public/JavaScript/Modules/ClearTables.js b/typo3/sysext/install/Resources/Public/JavaScript/Modules/ClearTables.js index 0f3a34efe81d..8f8c6073b594 100644 --- a/typo3/sysext/install/Resources/Public/JavaScript/Modules/ClearTables.js +++ b/typo3/sysext/install/Resources/Public/JavaScript/Modules/ClearTables.js @@ -89,7 +89,14 @@ define([ }); $statContainer.find(self.selectorStatLastRuler + ':last').remove(); } + } else { + var message = FlashMessage.render(Severity.error, 'Something went wrong', ''); + $outputContainer.append(message); } + }, + error: function () { + var message = FlashMessage.render(Severity.error, 'Something went wrong', ''); + $outputContainer.append(message); } }); }, @@ -118,6 +125,9 @@ define([ var message = InfoBox.render(element.severity, element.title, element.message); $outputContainer.append(message); }); + } else { + var message = FlashMessage.render(Severity.error, 'Something went wrong', ''); + $outputContainer.append(message); } }, error: function () { diff --git a/typo3/sysext/install/Resources/Public/JavaScript/Modules/ClearTypo3tempFiles.js b/typo3/sysext/install/Resources/Public/JavaScript/Modules/ClearTypo3tempFiles.js index a6ee77878088..dcb06fae0a4a 100644 --- a/typo3/sysext/install/Resources/Public/JavaScript/Modules/ClearTypo3tempFiles.js +++ b/typo3/sysext/install/Resources/Public/JavaScript/Modules/ClearTypo3tempFiles.js @@ -56,6 +56,9 @@ define(['jquery', 'TYPO3/CMS/Install/FlashMessage', 'TYPO3/CMS/Install/ProgressB var message = InfoBox.render(element.severity, element.title, element.message); $outputContainer.html(message); }); + } else { + var message = FlashMessage.render(Severity.error, 'Something went wrong', ''); + $outputContainer.empty().html(message); } }, error: function () { diff --git a/typo3/sysext/install/Resources/Public/JavaScript/Modules/CreateAdmin.js b/typo3/sysext/install/Resources/Public/JavaScript/Modules/CreateAdmin.js index 849c49fbdfbe..230384b43fc0 100644 --- a/typo3/sysext/install/Resources/Public/JavaScript/Modules/CreateAdmin.js +++ b/typo3/sysext/install/Resources/Public/JavaScript/Modules/CreateAdmin.js @@ -57,6 +57,9 @@ define(['jquery', 'TYPO3/CMS/Install/FlashMessage', 'TYPO3/CMS/Install/ProgressB var message = InfoBox.render(element.severity, element.title, element.message); $outputContainer.html(message); }); + } else { + var message = FlashMessage.render(Severity.error, 'Something went wrong', ''); + $outputContainer.empty().html(message); } }, error: function () { diff --git a/typo3/sysext/install/Resources/Public/JavaScript/Modules/DatabaseAnalyzer.js b/typo3/sysext/install/Resources/Public/JavaScript/Modules/DatabaseAnalyzer.js index 313c0e98426d..cb7c26dd928b 100644 --- a/typo3/sysext/install/Resources/Public/JavaScript/Modules/DatabaseAnalyzer.js +++ b/typo3/sysext/install/Resources/Public/JavaScript/Modules/DatabaseAnalyzer.js @@ -112,6 +112,9 @@ define(['jquery', 'TYPO3/CMS/Install/FlashMessage', 'TYPO3/CMS/Install/ProgressB $(self.selectorExecuteTrigger).prop('disabled', false); $(self.selectorAnalyzeTrigger).prop('disabled', false); } + } else { + var message = InfoBox.render(Severity.error, 'Something went wrong', ''); + $outputContainer.empty().html(message); } }, error: function() { diff --git a/typo3/sysext/install/Resources/Public/JavaScript/Modules/DumpAutoload.js b/typo3/sysext/install/Resources/Public/JavaScript/Modules/DumpAutoload.js index e219c30eb9e1..a042e9bf444d 100644 --- a/typo3/sysext/install/Resources/Public/JavaScript/Modules/DumpAutoload.js +++ b/typo3/sysext/install/Resources/Public/JavaScript/Modules/DumpAutoload.js @@ -49,6 +49,9 @@ define(['jquery', 'TYPO3/CMS/Install/FlashMessage', 'TYPO3/CMS/Install/ProgressB $outputContainer.append(message); })); } + } else { + var message = InfoBox.render(Severity.error, 'Something went wrong', ''); + $outputContainer.empty().html(message); } }, error: function() { diff --git a/typo3/sysext/install/Resources/Public/JavaScript/Modules/EnvironmentCheck.js b/typo3/sysext/install/Resources/Public/JavaScript/Modules/EnvironmentCheck.js index 4f0a8aeb8324..55ca1b17e0d7 100644 --- a/typo3/sysext/install/Resources/Public/JavaScript/Modules/EnvironmentCheck.js +++ b/typo3/sysext/install/Resources/Public/JavaScript/Modules/EnvironmentCheck.js @@ -79,6 +79,9 @@ define([ } else if (warningCount > 0) { $errorBadge.removeClass('label-error').addClass('label-warning').text(warningCount).show(); } + } else { + var message = FlashMessage.render(Severity.error, 'Something went wrong', ''); + $outputContainer.empty().append(message); } }, error: function() { diff --git a/typo3/sysext/install/Resources/Public/JavaScript/Modules/ExtensionScanner.js b/typo3/sysext/install/Resources/Public/JavaScript/Modules/ExtensionScanner.js index 82335067aeff..ad2707f3c533 100644 --- a/typo3/sysext/install/Resources/Public/JavaScript/Modules/ExtensionScanner.js +++ b/typo3/sysext/install/Resources/Public/JavaScript/Modules/ExtensionScanner.js @@ -25,7 +25,7 @@ define(['jquery', 'TYPO3/CMS/Backend/Notification'], function($, Notification) { initialize: function() { var self = this; - $(document).on('click', this.selectorScanSingleTrigger, function(e) { + $(document).on('click', this.selectorScanSingleTrigger, function(e) { // Scan a single extension var extension = $(e.target).data('extension'); e.preventDefault(); @@ -293,6 +293,9 @@ define(['jquery', 'TYPO3/CMS/Backend/Notification'], function($, Notification) { } else { Notification.warning('No files found', 'The extension EXT:' + extension + ' contains no files we can scan'); } + } else { + Notification.error('Oops, an error occurred', 'Please look at the console output for details'); + console.error(data); } }, error: function(data) { diff --git a/typo3/sysext/install/Resources/Public/JavaScript/Modules/FolderStructure.js b/typo3/sysext/install/Resources/Public/JavaScript/Modules/FolderStructure.js index 771d7742a2d9..13ef254f6b22 100644 --- a/typo3/sysext/install/Resources/Public/JavaScript/Modules/FolderStructure.js +++ b/typo3/sysext/install/Resources/Public/JavaScript/Modules/FolderStructure.js @@ -125,6 +125,9 @@ define(['jquery', $outputContainer.append(message); } self.getStatus(); + } else { + var message = FlashMessage.render(Severity.error, 'Something went wrong', ''); + $outputContainer.empty().html(message); } }, error: function() { diff --git a/typo3/sysext/install/Resources/Public/JavaScript/Modules/LocalConfiguration.js b/typo3/sysext/install/Resources/Public/JavaScript/Modules/LocalConfiguration.js index 790ea24e2db2..66e629e98ba5 100644 --- a/typo3/sysext/install/Resources/Public/JavaScript/Modules/LocalConfiguration.js +++ b/typo3/sysext/install/Resources/Public/JavaScript/Modules/LocalConfiguration.js @@ -130,6 +130,9 @@ define(['jquery', 'TYPO3/CMS/Install/FlashMessage', 'TYPO3/CMS/Install/ProgressB var message = InfoBox.render(element.severity, element.title, element.message); $outputContainer.append(message); }); + } else { + var message = FlashMessage.render(Severity.error, 'Something went wrong', ''); + $outputContainer.empty().html(message); } }, error: function() { diff --git a/typo3/sysext/install/Resources/Public/JavaScript/Modules/MailTest.js b/typo3/sysext/install/Resources/Public/JavaScript/Modules/MailTest.js index 3dba7c912f99..ce238c9a1b9d 100644 --- a/typo3/sysext/install/Resources/Public/JavaScript/Modules/MailTest.js +++ b/typo3/sysext/install/Resources/Public/JavaScript/Modules/MailTest.js @@ -61,6 +61,9 @@ define(['jquery', var message = InfoBox.render(element.severity, element.title, element.message); $outputContainer.html(message); }); + } else { + var message = FlashMessage.render(Severity.error, 'Something went wrong', ''); + $outputContainer.empty().html(message); } }, error: function () { diff --git a/typo3/sysext/install/Resources/Public/JavaScript/Modules/Presets.js b/typo3/sysext/install/Resources/Public/JavaScript/Modules/Presets.js index cdfd37361321..f570a88e8910 100644 --- a/typo3/sysext/install/Resources/Public/JavaScript/Modules/Presets.js +++ b/typo3/sysext/install/Resources/Public/JavaScript/Modules/Presets.js @@ -60,6 +60,9 @@ define(['jquery', 'TYPO3/CMS/Install/FlashMessage', 'TYPO3/CMS/Install/ProgressB var message = InfoBox.render(element.severity, element.title, element.message); $outputContainer.append(message); }); + } else { + var message = FlashMessage.render(Severity.error, 'Something went wrong', ''); + $outputContainer.empty().html(message); } }, error: function() { diff --git a/typo3/sysext/install/Resources/Public/JavaScript/Modules/ResetBackendUserUc.js b/typo3/sysext/install/Resources/Public/JavaScript/Modules/ResetBackendUserUc.js index 34e423cebeed..0b4e3ba0dfa9 100644 --- a/typo3/sysext/install/Resources/Public/JavaScript/Modules/ResetBackendUserUc.js +++ b/typo3/sysext/install/Resources/Public/JavaScript/Modules/ResetBackendUserUc.js @@ -50,6 +50,9 @@ define(['jquery', 'TYPO3/CMS/Install/FlashMessage', 'TYPO3/CMS/Install/ProgressB $outputContainer.append(message); }); } + } else { + var message = FlashMessage.render(Severity.error, 'Something went wrong', ''); + $outputContainer.empty().html(message); } }, error: function () { diff --git a/typo3/sysext/install/Resources/Public/JavaScript/Modules/SystemMaintainer.js b/typo3/sysext/install/Resources/Public/JavaScript/Modules/SystemMaintainer.js index 8bee9736912c..a4e3f328339b 100644 --- a/typo3/sysext/install/Resources/Public/JavaScript/Modules/SystemMaintainer.js +++ b/typo3/sysext/install/Resources/Public/JavaScript/Modules/SystemMaintainer.js @@ -129,6 +129,9 @@ define([ $outputContainer.empty().append(message); }); } + } else { + var message = InfoBox.render(Severity.error, 'Something went wrong', ''); + $outputContainer.empty().html(message); } }, error: function() { diff --git a/typo3/sysext/install/Resources/Public/JavaScript/Modules/TcaExtTablesCheck.js b/typo3/sysext/install/Resources/Public/JavaScript/Modules/TcaExtTablesCheck.js index 0f5bff16f1bb..acc7712ecc81 100644 --- a/typo3/sysext/install/Resources/Public/JavaScript/Modules/TcaExtTablesCheck.js +++ b/typo3/sysext/install/Resources/Public/JavaScript/Modules/TcaExtTablesCheck.js @@ -65,6 +65,9 @@ define([ var message = InfoBox.render(Severity.ok, 'No TCA changes in ext_tables.php files. Good job!', ''); $outputContainer.empty().html(message); } + } else { + var message = FlashMessage.render(Severity.error, 'Something went wrong', 'Use "Check for broken extensions"'); + $outputContainer.empty().html(message); } }, error: function() { diff --git a/typo3/sysext/install/Resources/Public/JavaScript/Modules/TcaMigrationsCheck.js b/typo3/sysext/install/Resources/Public/JavaScript/Modules/TcaMigrationsCheck.js index 6e28941882cb..4a068ff08bf1 100644 --- a/typo3/sysext/install/Resources/Public/JavaScript/Modules/TcaMigrationsCheck.js +++ b/typo3/sysext/install/Resources/Public/JavaScript/Modules/TcaMigrationsCheck.js @@ -65,6 +65,9 @@ define([ var message = InfoBox.render(Severity.ok, 'No TCA migrations need to be applied', 'Your TCA looks good.'); $outputContainer.empty().html(message); } + } else { + var message = FlashMessage.render(Severity.error, 'Something went wrong', 'Use "Check for broken extensions"'); + $outputContainer.empty().html(message); } }, error: function() { diff --git a/typo3/sysext/install/Resources/Public/JavaScript/Modules/UpgradeWizards.js b/typo3/sysext/install/Resources/Public/JavaScript/Modules/UpgradeWizards.js index 403e0e9b25c7..76afe8192ef9 100644 --- a/typo3/sysext/install/Resources/Public/JavaScript/Modules/UpgradeWizards.js +++ b/typo3/sysext/install/Resources/Public/JavaScript/Modules/UpgradeWizards.js @@ -117,6 +117,9 @@ function($, FlashMessage, ProgressBar, InfoBox, Severity) { })); } self.blockingUpgradesDatabaseCharsetTest(); + } else { + var message = FlashMessage.render(Severity.error, 'Something went wrong', ''); + $outputContainer.empty().html(message); } }, error: function() { @@ -176,6 +179,10 @@ function($, FlashMessage, ProgressBar, InfoBox, Severity) { $outputContainer.append(message); }); } + } else { + var message = FlashMessage.render(Severity.error, 'Something went wrong', ''); + self.removeLoadingMessage($outputContainer); + $outputContainer.append(message); } }, error: function() { @@ -222,6 +229,10 @@ function($, FlashMessage, ProgressBar, InfoBox, Severity) { } else { self.wizardsList(); } + } else { + var message = FlashMessage.render(Severity.error, 'Something went wrong', ''); + self.removeLoadingMessage($outputContainer); + $outputContainer.append(message); } }, error: function() { @@ -253,6 +264,10 @@ function($, FlashMessage, ProgressBar, InfoBox, Severity) { }); self.wizardsList(); } + } else { + var message = FlashMessage.render(Severity.error, 'Something went wrong', ''); + self.removeLoadingMessage($outputContainer); + $outputContainer.append(message); } }, error: function() { @@ -308,6 +323,10 @@ function($, FlashMessage, ProgressBar, InfoBox, Severity) { .find('span') .text(parseInt(percent) + '%'); $outputContainer.append(list); + } else { + var message = FlashMessage.render(Severity.error, 'Something went wrong', ''); + self.removeLoadingMessage($outputContainer); + $outputContainer.append(message); } }, error: function() { @@ -393,6 +412,9 @@ function($, FlashMessage, ProgressBar, InfoBox, Severity) { self.wizardsList(); $outputDoneContainer.empty(); self.doneUpgrades(); + } else { + var message = FlashMessage.render(Severity.error, 'Something went wrong', ''); + $outputContainer.empty().html(message); } }, error: function() { @@ -448,6 +470,10 @@ function($, FlashMessage, ProgressBar, InfoBox, Severity) { if (hasBodyContent === true) { $outputContainer.append(body); } + } else { + var message = FlashMessage.render(Severity.error, 'Something went wrong', ''); + self.removeLoadingMessage($outputContainer); + $outputContainer.append(message); } }, error: function() { @@ -484,6 +510,9 @@ function($, FlashMessage, ProgressBar, InfoBox, Severity) { self.doneUpgrades(); self.blockingUpgradesDatabaseCharsetTest(); }); + } else { + var message = FlashMessage.render(Severity.error, 'Something went wrong', ''); + $outputContainer.empty().html(message); } }, error: function() { -- GitLab