1.4.20 auto update avec messages d'erreurs
This commit is contained in:
parent
28ee5e46a5
commit
13b5adffac
@ -1,4 +1,4 @@
|
|||||||
# ZwiiCampus 1.4.16
|
# ZwiiCampus 1.4.20
|
||||||
|
|
||||||
ZwiiCampus (Learning Management System) est logiciel auteur destiné à mettre en ligne des tutoriels. Il dispose de plusieurs modalités d'ouverture et d'accès des contenus. Basé sur la version 13 du CMS Zwii, la structure logicielle est solide, le framework de Zwii est éprouvé.
|
ZwiiCampus (Learning Management System) est logiciel auteur destiné à mettre en ligne des tutoriels. Il dispose de plusieurs modalités d'ouverture et d'accès des contenus. Basé sur la version 13 du CMS Zwii, la structure logicielle est solide, le framework de Zwii est éprouvé.
|
||||||
|
|
||||||
|
@ -51,7 +51,7 @@ class common
|
|||||||
const ACCESS_TIMER = 1800;
|
const ACCESS_TIMER = 1800;
|
||||||
|
|
||||||
// Numéro de version
|
// Numéro de version
|
||||||
const ZWII_VERSION = '1.4.19';
|
const ZWII_VERSION = '1.4.20';
|
||||||
|
|
||||||
// URL autoupdate
|
// URL autoupdate
|
||||||
const ZWII_UPDATE_URL = 'https://forge.chapril.org/ZwiiCMS-Team/campus-update/raw/branch/master/';
|
const ZWII_UPDATE_URL = 'https://forge.chapril.org/ZwiiCMS-Team/campus-update/raw/branch/master/';
|
||||||
|
@ -248,11 +248,11 @@ class install extends common
|
|||||||
$message = $success ? '' : 'Erreur de copie du fichier htaccess';
|
$message = $success ? '' : 'Erreur de copie du fichier htaccess';
|
||||||
}
|
}
|
||||||
// Nettoyage des fichiers d'installation précédents
|
// Nettoyage des fichiers d'installation précédents
|
||||||
if (file_exists(self::TEMP_DIR . 'update.tar.gz') && $success) {
|
if ($success && file_exists(self::TEMP_DIR . 'update.tar.gz')) {
|
||||||
$success = unlink(self::TEMP_DIR . 'update.tar.gz');
|
$success = unlink(self::TEMP_DIR . 'update.tar.gz');
|
||||||
$message = $success ? '' : 'Impossible d\'effacer la mise à jour précédente';
|
$message = $success ? '' : 'Impossible d\'effacer la mise à jour précédente';
|
||||||
}
|
}
|
||||||
if (file_exists(self::TEMP_DIR . 'update.tar') && $success) {
|
if ($success && file_exists(self::TEMP_DIR . 'update.tar')) {
|
||||||
$success = unlink(self::TEMP_DIR . 'update.tar');
|
$success = unlink(self::TEMP_DIR . 'update.tar');
|
||||||
$message = $success ? '' : 'Impossible d\'effacer la mise à jour précédente';
|
$message = $success ? '' : 'Impossible d\'effacer la mise à jour précédente';
|
||||||
}
|
}
|
||||||
@ -267,6 +267,8 @@ class install extends common
|
|||||||
break;
|
break;
|
||||||
// Téléchargement
|
// Téléchargement
|
||||||
case 2:
|
case 2:
|
||||||
|
$success = true;
|
||||||
|
$message = '';
|
||||||
file_put_contents(self::TEMP_DIR . 'update.tar.gz', helper::getUrlContents(common::ZWII_UPDATE_URL . common::ZWII_UPDATE_CHANNEL . '/update.tar.gz'));
|
file_put_contents(self::TEMP_DIR . 'update.tar.gz', helper::getUrlContents(common::ZWII_UPDATE_URL . common::ZWII_UPDATE_CHANNEL . '/update.tar.gz'));
|
||||||
$md5origin = helper::getUrlContents(common::ZWII_UPDATE_URL . common::ZWII_UPDATE_CHANNEL . '/update.md5');
|
$md5origin = helper::getUrlContents(common::ZWII_UPDATE_URL . common::ZWII_UPDATE_CHANNEL . '/update.md5');
|
||||||
$md5origin = explode(' ', $md5origin);
|
$md5origin = explode(' ', $md5origin);
|
||||||
@ -277,7 +279,7 @@ class install extends common
|
|||||||
$message = "";
|
$message = "";
|
||||||
} else {
|
} else {
|
||||||
$success = false;
|
$success = false;
|
||||||
$message = json_encode('Erreur de téléchargement ou de somme de contrôle', JSON_UNESCAPED_UNICODE);
|
$message = 'Erreur de téléchargement ou de somme de contrôle';
|
||||||
if (file_exists(self::TEMP_DIR . 'update.tar.gz')) {
|
if (file_exists(self::TEMP_DIR . 'update.tar.gz')) {
|
||||||
unlink(self::TEMP_DIR . 'update.tar.gz');
|
unlink(self::TEMP_DIR . 'update.tar.gz');
|
||||||
http_response_code(500);
|
http_response_code(500);
|
||||||
@ -289,15 +291,20 @@ class install extends common
|
|||||||
'display' => self::DISPLAY_JSON,
|
'display' => self::DISPLAY_JSON,
|
||||||
'content' => [
|
'content' => [
|
||||||
'success' => $success,
|
'success' => $success,
|
||||||
'data' => $message
|
'data' => json_encode($message, JSON_UNESCAPED_UNICODE)
|
||||||
]
|
]
|
||||||
]);
|
]);
|
||||||
break;
|
break;
|
||||||
// Installation
|
// Installation
|
||||||
case 3:
|
case 3:
|
||||||
$success = true;
|
$success = true;
|
||||||
|
$message = '';
|
||||||
|
|
||||||
// Check la réécriture d'URL avant d'écraser les fichiers
|
// Check la réécriture d'URL avant d'écraser les fichiers
|
||||||
$rewrite = helper::checkRewrite();
|
if (helper::checkRewrite()) {
|
||||||
|
touch(self::DATA_DIR . '.rewrite');
|
||||||
|
}
|
||||||
|
|
||||||
// Décompression et installation
|
// Décompression et installation
|
||||||
try {
|
try {
|
||||||
// Décompression dans le dossier de fichier temporaires
|
// Décompression dans le dossier de fichier temporaires
|
||||||
@ -306,9 +313,11 @@ class install extends common
|
|||||||
// Installation
|
// Installation
|
||||||
$pharData->extractTo(__DIR__ . '/../../../', null, true);
|
$pharData->extractTo(__DIR__ . '/../../../', null, true);
|
||||||
} catch (Exception $e) {
|
} catch (Exception $e) {
|
||||||
|
$message = $e->getMessage();
|
||||||
$success = false;
|
$success = false;
|
||||||
http_response_code(500);
|
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')) {
|
||||||
unlink(self::TEMP_DIR . 'update.tar.gz');
|
unlink(self::TEMP_DIR . 'update.tar.gz');
|
||||||
@ -316,12 +325,13 @@ class install extends common
|
|||||||
if (file_exists(self::TEMP_DIR . 'update.tar')) {
|
if (file_exists(self::TEMP_DIR . 'update.tar')) {
|
||||||
unlink(self::TEMP_DIR . 'update.tar');
|
unlink(self::TEMP_DIR . 'update.tar');
|
||||||
}
|
}
|
||||||
|
|
||||||
// Valeurs en sortie
|
// Valeurs en sortie
|
||||||
$this->addOutput([
|
$this->addOutput([
|
||||||
'display' => self::DISPLAY_JSON,
|
'display' => self::DISPLAY_JSON,
|
||||||
'content' => [
|
'content' => [
|
||||||
'success' => $success,
|
'success' => $success,
|
||||||
'data' => $rewrite
|
'data' => json_encode($message, JSON_UNESCAPED_UNICODE)
|
||||||
]
|
]
|
||||||
]);
|
]);
|
||||||
break;
|
break;
|
||||||
@ -329,7 +339,6 @@ class install extends common
|
|||||||
case 4:
|
case 4:
|
||||||
$success = true;
|
$success = true;
|
||||||
$message = '';
|
$message = '';
|
||||||
$rewrite = $this->getInput('data');
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Restaure le fichier htaccess
|
* Restaure le fichier htaccess
|
||||||
@ -350,7 +359,7 @@ class install extends common
|
|||||||
/**
|
/**
|
||||||
* Restaure la réécriture d'URL
|
* Restaure la réécriture d'URL
|
||||||
*/
|
*/
|
||||||
if ($rewrite === 'true') { // Ajout des lignes dans le .htaccess
|
if (file_exists(self::DATA_DIR . '.rewrite')) { // Ajout des lignes dans le .htaccess
|
||||||
$fileContent = file_get_contents('.htaccess');
|
$fileContent = file_get_contents('.htaccess');
|
||||||
$rewriteData = PHP_EOL .
|
$rewriteData = PHP_EOL .
|
||||||
'# URL rewriting' . PHP_EOL .
|
'# URL rewriting' . PHP_EOL .
|
||||||
@ -367,6 +376,7 @@ class install extends common
|
|||||||
'.htaccess',
|
'.htaccess',
|
||||||
$fileContent
|
$fileContent
|
||||||
);
|
);
|
||||||
|
unlink(self::DATA_DIR . '.rewrite');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -378,7 +388,6 @@ class install extends common
|
|||||||
$defaultLanguages = init::$defaultData['language'];
|
$defaultLanguages = init::$defaultData['language'];
|
||||||
foreach ($installedLanguages as $key => $value) {
|
foreach ($installedLanguages as $key => $value) {
|
||||||
|
|
||||||
//var_dump( $defaultLanguages[$key]['date'] > $value['date'] );
|
|
||||||
if (
|
if (
|
||||||
isset($defaultLanguages[$key]['date']) &&
|
isset($defaultLanguages[$key]['date']) &&
|
||||||
$defaultLanguages[$key]['date'] > $value['date'] &&
|
$defaultLanguages[$key]['date'] > $value['date'] &&
|
||||||
@ -419,10 +428,13 @@ class install extends common
|
|||||||
} else {
|
} else {
|
||||||
// Nouvelle version
|
// Nouvelle version
|
||||||
self::$newVersion = helper::getUrlContents(common::ZWII_UPDATE_URL . common::ZWII_UPDATE_CHANNEL . '/version');
|
self::$newVersion = helper::getUrlContents(common::ZWII_UPDATE_URL . common::ZWII_UPDATE_CHANNEL . '/version');
|
||||||
|
|
||||||
// Variable de version
|
// Variable de version
|
||||||
if (helper::checkNewVersion(common::ZWII_UPDATE_CHANNEL)) {
|
if (helper::checkNewVersion(common::ZWII_UPDATE_CHANNEL)) {
|
||||||
self::$updateButtonText = helper::translate('Mise à jour');
|
self::$updateButtonText = helper::translate('Mise à jour');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// Valeurs en sortie
|
// Valeurs en sortie
|
||||||
$this->addOutput([
|
$this->addOutput([
|
||||||
'display' => self::DISPLAY_LAYOUT_LIGHT,
|
'display' => self::DISPLAY_LAYOUT_LIGHT,
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
function step(i, data) {
|
function step(i, data) {
|
||||||
var errors = ["<?php echo helper::translate('Préparation de la mise à jour'); ?>", "<?php echo helper::translate('Téléchargement et validation de l\'archive'); ?>", "<?php echo helper::translate('Installation'); ?>", "<?php echo helper::translate('Configuration'); ?>"];
|
var errors = ["<?php echo helper::translate('Préparation de la mise à jour'); ?>", "<?php echo helper::translate('Téléchargement et validation de l\'archive'); ?>", "<?php echo helper::translate('Installation'); ?>", "<?php echo helper::translate('Configuration'); ?>"];
|
||||||
$(".installUpdateProgressText").hide(), $(".installUpdateProgressText[data-id=" + i + "]").show();
|
$(".installUpdateProgressText").hide(), $(".installUpdateProgressText[data-id=" + i + "]").show();
|
||||||
|
|
||||||
$("body").css("cursor", "wait");
|
$("body").css("cursor", "wait");
|
||||||
|
|
||||||
$.ajax({
|
$.ajax({
|
||||||
@ -12,11 +12,6 @@ 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"
|
|
||||||
// Appel de la fonction de gestion d'erreur
|
|
||||||
// showError(i, result, errors);
|
|
||||||
// return;
|
|
||||||
//}
|
|
||||||
setTimeout((function () {
|
setTimeout((function () {
|
||||||
if (4 === i) {
|
if (4 === i) {
|
||||||
$("#installUpdateSuccess").show();
|
$("#installUpdateSuccess").show();
|
||||||
@ -60,10 +55,13 @@ function showError(step, message, errors) {
|
|||||||
const jsonData = JSON.parse(jsonString);
|
const jsonData = JSON.parse(jsonString);
|
||||||
|
|
||||||
// Afficher les résultats
|
// Afficher les résultats
|
||||||
$("#installUpdateErrorMessage").html("<strong>Détails de l'erreur :</strong><br> " +
|
if (jsonData) {
|
||||||
jsonData.data.replace(/^"(.*)"$/, '$1') +
|
$("#installUpdateErrorMessage").html("<strong>Détails de l'erreur :</strong><br> " +
|
||||||
"<br>" +
|
jsonData.data.replace(/^"(.*)"$/, '$1') +
|
||||||
warningMessage.replace(/<[^p].*?>/g, ""));
|
"<br>" +
|
||||||
|
warningMessage.replace(/<[^p].*?>/g, ""));
|
||||||
|
}
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
// 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);
|
||||||
|
@ -5,7 +5,7 @@
|
|||||||
<?php echo self::ZWII_VERSION; ?>
|
<?php echo self::ZWII_VERSION; ?>
|
||||||
<?php echo helper::translate('vers'); ?>
|
<?php echo helper::translate('vers'); ?>
|
||||||
|
|
||||||
<?php echo $module::$newVersion; ?>.
|
<?php echo $module::$newVersion; ?>
|
||||||
</strong></p>
|
</strong></p>
|
||||||
<p>
|
<p>
|
||||||
<?php echo helper::translate('Afin d\'assurer le bon fonctionnement de Zwii, veuillez ne pas fermer cette page avant la fin de l\'opération.'); ?>
|
<?php echo helper::translate('Afin d\'assurer le bon fonctionnement de Zwii, veuillez ne pas fermer cette page avant la fin de l\'opération.'); ?>
|
||||||
|
Loading…
Reference in New Issue
Block a user