From 47a5ddb4427d3c98093e1e420542e86a03770320 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Tempez?= Date: Wed, 25 Sep 2024 21:41:08 +0200 Subject: [PATCH] =?UTF-8?q?gestion=20erreur=20simplifi=C3=A9e?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- core/module/install/view/update/update.js.php | 61 ++++++------------- 1 file changed, 19 insertions(+), 42 deletions(-) diff --git a/core/module/install/view/update/update.js.php b/core/module/install/view/update/update.js.php index e7e0a714..e4aea36a 100644 --- a/core/module/install/view/update/update.js.php +++ b/core/module/install/view/update/update.js.php @@ -1,6 +1,12 @@ function step(i, data) { - var errors = ["", "", "", ""]; - $(".installUpdateProgressText").hide(), $(".installUpdateProgressText[data-id=" + i + "]").show(); + var errors = [ + "", + "", + "", + "" + ]; + $(".installUpdateProgressText").hide(); + $(".installUpdateProgressText[data-id=" + i + "]").show(); $("body").css("cursor", "wait"); @@ -12,7 +18,7 @@ function step(i, data) { data: data }, success: function (result) { - setTimeout((function () { + setTimeout(function () { if (4 === i) { $("#installUpdateSuccess").show(); $("body").css("cursor", "default"); @@ -21,59 +27,30 @@ function step(i, data) { } else { step(i + 1, result.data); } - }), 2e3) + }, 2000); }, error: function (xhr) { // Balance tout dans la console - console.log(i); - console.log(xhr.responseText); - console.log(errors); - // Appel de la fonction de gestion d'erreur - showError(i, xhr.responseText, errors); + console.log("Erreur à l'étape :", i); + console.log("Détails de l'erreur :", xhr.responseText); + console.log("Messages d'erreurs :", errors); + // Appel de la nouvelle fonction d'erreur + showError(i, errors); } }); } -function showError(step, message, errors) { +function showError(step, errors) { $("body").css("cursor", "default"); $("#installUpdateErrorStep").text(errors[step] + " (étape n°" + step + ")"); $("#installUpdateError").show(); $("#installUpdateEnd").removeClass("disabled"); $("#installUpdateProgress").hide(); - if (typeof message !== 'object') { - const startOfArray = message.indexOf('{'); - - // Vérifier que l'accolade existe et n'est pas en première position - if (startOfArray !== -1 && startOfArray > 0) { - const warningMessage = message.substring(0, startOfArray).trim(); - const jsonString = message.substring(startOfArray); - - try { - const jsonData = JSON.parse(jsonString); - - // Afficher les résultats si le parsing JSON est réussi - if (jsonData) { - $("#installUpdateErrorMessage").html("Détails de l'erreur :
" + - jsonData.data.replace(/^"(.*)"$/, '$1') + - "
" + - warningMessage.replace(/<[^p].*?>/g, "")); - } - } catch (e) { - // En cas d'erreur de parsing, afficher un message générique - console.error("Erreur de parsing JSON : ", e); - $("#installUpdateErrorMessage").html("Une erreur inattendue est survenue lors du traitement des détails de l'erreur."); - } - } else { - // Si pas de JSON détecté, afficher le message brut - $("#installUpdateErrorMessage").html("Message d'erreur : " + message); - } - } else { - $("#installUpdateErrorMessage").html(message); - } + // Affiche un message générique demandant de consulter la console + $("#installUpdateErrorMessage").html("Une erreur est survenue. Veuillez consulter la console du navigateur pour plus de détails."); } - $(window).on("load", function () { step(1, null); -}); \ No newline at end of file +});