Génére des erreurs 500 en cas d'erreur

This commit is contained in:
Fred Tempez 2023-07-23 18:51:35 +02:00
parent c0a02874f8
commit 2d9d8faa3d
3 changed files with 27 additions and 21 deletions

View File

@ -356,6 +356,7 @@ class install extends common
$pharData->extractTo(__DIR__ . '/../../../', null, true); $pharData->extractTo(__DIR__ . '/../../../', null, true);
} catch (Exception $e) { } catch (Exception $e) {
$success = false; $success = false;
http_response_code(500);
} }
// Nettoyage du dossier // Nettoyage du dossier
if (file_exists(self::TEMP_DIR . 'update.tar.gz')) { if (file_exists(self::TEMP_DIR . 'update.tar.gz')) {
@ -396,7 +397,11 @@ class install extends common
'.htaccess', '.htaccess',
$fileContent $fileContent
); );
$message = $success ? '' : helper::translate('La réécriture d\'URL n\'a pas été restaurée !'); if ($success === false) {
$message = helper::translate('La réécriture d\'URL n\'a pas été restaurée !');
http_response_code(500);
}
} }
// Recopie htaccess // Recopie htaccess
if ( if (
@ -404,8 +409,11 @@ class install extends common
$success && file_exists('.htaccess.bak') $success && file_exists('.htaccess.bak')
) { ) {
// L'écraser avec le backup // L'écraser avec le backup
$success = $success || copy('.htaccess.bak', '.htaccess'); $success = copy('.htaccess.bak', '.htaccess');
$message = $success ? '' : helper::translate('La copie de sauvegarde du fichier htaccess n\'a pas été restaurée !'); if ($success === false) {
$message = helper::translate('La copie de sauvegarde du fichier htaccess n\'a pas été restaurée !');
http_response_code(500);
}
// Effacer le backup // Effacer le backup
unlink('.htaccess.bak'); unlink('.htaccess.bak');
} }
@ -413,18 +421,19 @@ class install extends common
/** /**
* Met à jour les dictionnaires des langues depuis les modèles installés * Met à jour les dictionnaires des langues depuis les modèles installés
*/ */
if ($success) {
// Langues installées
$installedUI = $this->getData(['language']);
// Langues installées // Langues disponibles avec la mise à jour
$installedUI = $this->getData(['language']); require_once('core/module/install/ressource/defaultdata.php');
$default = init::$defaultData['language'];
// Langues disponibles avec la mise à jour foreach ($installedUI as $key => $value) {
require_once('core/module/install/ressource/defaultdata.php'); if ($default[$key]['version'] > $value['version']) {
$default = init::$defaultData['language']; copy('core/module/install/ressource/i18n/' . $key . '.json', self::I18N_DIR . $key . '.json');
$this->setData(['language', $key, $default[$key]]);
foreach ($installedUI as $key => $value) { }
if ($default[$key]['version'] > $value['version']) {
copy('core/module/install/ressource/i18n/' . $key . '.json', self::I18N_DIR . $key . '.json');
$this->setData(['language', $key, $default[$key]]);
} }
} }

View File

@ -9,11 +9,11 @@ function step(i, data) {
data: data data: data
}, },
success: function (result) { success: function (result) {
if (result.success != "1") { // Vérification de la propriété "success" // if (result.success != "1") { // Vérification de la propriété "success"
// Appel de la fonction de gestion d'erreur // Appel de la fonction de gestion d'erreur
showError(i, result, errors); // showError(i, result, errors);
return; // return;
} //}
setTimeout((function () { setTimeout((function () {
if (4 === i) { if (4 === i) {
$("#installUpdateSuccess").show(); $("#installUpdateSuccess").show();
@ -55,8 +55,6 @@ function showError(step, message, errors) {
console.log("Données du tableau:", jsonData); console.log("Données du tableau:", jsonData);
$("#installUpdateErrorMessage").html("<strong>Détails de l'erreur :</strong><br> " + jsonData.data.replace(/^"(.*)"$/, '$1') + "<br>" + warningMessage.replace(/<[^p].*?>/g, "")); $("#installUpdateErrorMessage").html("<strong>Détails de l'erreur :</strong><br> " + jsonData.data.replace(/^"(.*)"$/, '$1') + "<br>" + warningMessage.replace(/<[^p].*?>/g, ""));
} else { } else {
// Si l'accolade ouvrante n'est pas trouvée ou en première position, afficher un message d'erreur
console.log("Aucune donnée JSON trouvée dans le message d'erreur.");
// Vous pouvez également faire quelque chose d'autre ici, par exemple, afficher un message à l'utilisateur, etc. // Vous pouvez également faire quelque chose d'autre ici, par exemple, afficher un message à l'utilisateur, etc.
$("#installUpdateErrorMessage").html(message); $("#installUpdateErrorMessage").html(message);
} }

View File

@ -30,8 +30,7 @@
<div id="installUpdateError" class="message colorRed displayNone"> <div id="installUpdateError" class="message colorRed displayNone">
<?php echo template::ico('cancel'); ?> <?php echo template::ico('cancel'); ?>
<strong> <strong>
<?php echo helper::translate('Une erreur est survenue lors de l\'étape :'); ?> <?php echo helper::translate('Une erreur est survenue lors de l\'étape :') . '<br>'; ?>
&nbsp;
<span id="installUpdateErrorStep"> </span>. <span id="installUpdateErrorStep"> </span>.
</strong> </strong>
</div> </div>