From 90946cf9f16bf7783d3b9d94a58df5fa88ec7f1b Mon Sep 17 00:00:00 2001 From: Fred Tempez Date: Mon, 10 Feb 2020 16:36:57 +0100 Subject: [PATCH] [10.0.030.dev] correction CSS + modification config / restore and backup --- core/core.php | 2 +- core/layout/common.css | 11 +++- core/module/config/config.php | 64 ++++++++++-------- core/module/config/view/backup/backup.php | 33 ++++++++++ core/module/config/view/index/index.php | 65 ++++++++++++------- .../manage.php => restore/restore.php} | 54 +++++---------- 6 files changed, 134 insertions(+), 95 deletions(-) create mode 100644 core/module/config/view/backup/backup.php rename core/module/config/view/{manage/manage.php => restore/restore.php} (61%) diff --git a/core/core.php b/core/core.php index 42aa8a8a..4972728c 100644 --- a/core/core.php +++ b/core/core.php @@ -34,7 +34,7 @@ class common { const TEMP_DIR = 'site/tmp/'; // Numéro de version - const ZWII_VERSION = '10.0.029.dev'; + const ZWII_VERSION = '10.0.030.dev'; public static $actions = []; public static $coreModuleIds = [ diff --git a/core/layout/common.css b/core/layout/common.css index db9be5bd..ca1c5977 100755 --- a/core/layout/common.css +++ b/core/layout/common.css @@ -145,6 +145,10 @@ img[align='right'] { margin-left: 10px; } +#metaImage { + height: 100px; +} + /* Signature dans les articles blog et news */ @@ -972,13 +976,14 @@ label { width: 88%; } .inputFileDelete { - display: inline-block; + display: block; width: 10%; padding: 10px 0; background: #F5F5F5; text-align: center; - /*float: right;*/ - min-height :100%; + float: right; + min-height :100%; + } .inputFile:hover { text-decoration: none; diff --git a/core/module/config/config.php b/core/module/config/config.php index a294f006..152a6d23 100755 --- a/core/module/config/config.php +++ b/core/module/config/config.php @@ -20,7 +20,7 @@ class config extends common { 'generateFiles' => self::GROUP_ADMIN, 'updateRobots' => self::GROUP_ADMIN, 'index' => self::GROUP_ADMIN, - 'manage' => self::GROUP_ADMIN, + 'restore' => self::GROUP_ADMIN, 'updateBaseUrl' => self::GROUP_ADMIN ]; @@ -200,21 +200,29 @@ class config extends common { * Sauvegarde des données */ public function backup() { - // Creation du ZIP - $filter = $this->getInput('configBackupOption',helper::FILTER_BOOLEAN) === true ? ['backup','tmp'] : ['backup','tmp','file']; - $fileName = helper::autoBackup(self::TEMP_DIR,$filter); + // Soumission du formulaire + if($this->isPost()) { + // Creation du ZIP + $filter = $this->getInput('configBackupOption',helper::FILTER_BOOLEAN) === true ? ['backup','tmp'] : ['backup','tmp','file']; + $fileName = helper::autoBackup(self::TEMP_DIR,$filter); - // Téléchargement du ZIP - header('Content-Type: application/zip'); - header('Content-Disposition: attachment; filename="' . $fileName . '"'); - header('Content-Length: ' . filesize(self::TEMP_DIR . $fileName)); - readfile(self::TEMP_DIR . $fileName); - // Valeurs en sortie - $this->addOutput([ - 'display' => self::DISPLAY_RAW - ]); - unlink(self::TEMP_DIR . $fileName); - exit(); + // Téléchargement du ZIP + header('Content-Type: application/zip'); + header('Content-Disposition: attachment; filename="' . $fileName . '"'); + header('Content-Length: ' . filesize(self::TEMP_DIR . $fileName)); + readfile(self::TEMP_DIR . $fileName); + // Valeurs en sortie + $this->addOutput([ + 'display' => self::DISPLAY_RAW + ]); + unlink(self::TEMP_DIR . $fileName); + } else { + // Valeurs en sortie + $this->addOutput([ + 'title' => 'Sauvegarder', + 'view' => 'backup' + ]); + } } /** @@ -254,11 +262,11 @@ class config extends common { /** * Procédure d'importation */ - public function manage() { + public function restore() { // Soumission du formulaire if($this->isPost()) { - //if ($this->getInput('configManageImportFile')) - $fileZip = $this->getInput('configManageImportFile'); + //if ($this->getInput('configrestoreImportFile')) + $fileZip = $this->getInput('configRestoreImportFile'); $file_parts = pathinfo($fileZip); $folder = date('Y-m-d-h-i-s', time()); $zip = new ZipArchive(); @@ -266,7 +274,7 @@ class config extends common { // Valeurs en sortie erreur $this->addOutput([ 'notification' => 'Le fichier n\'est pas une archive valide', - 'redirect' => helper::baseUrl() . 'config/manage', + 'redirect' => helper::baseUrl() . 'config/restore', 'state' => false ]); } @@ -275,7 +283,7 @@ class config extends common { // Valeurs en sortie erreur $this->addOutput([ 'notification' => 'Impossible de lire l\'archive', - 'redirect' => helper::baseUrl() . 'config/manage', + 'redirect' => helper::baseUrl() . 'config/restore', 'state' => false ]); } @@ -300,14 +308,14 @@ class config extends common { // V10 valide user et config $version = '10'; // Option active, les users sont stockées - if ($this->getInput('configManageImportUser', helper::FILTER_BOOLEAN) === true ) { + if ($this->getInput('configRestoreImportUser', helper::FILTER_BOOLEAN) === true ) { $users = $this->getData(['user']); } } else { // Version invalide // Valeurs en sortie erreur $this->addOutput([ 'notification' => 'Cette archive n\'est pas une sauvegarde valide', - 'redirect' => helper::baseUrl() . 'config/manage', + 'redirect' => helper::baseUrl() . 'config/restore', 'state' => false ]); } @@ -315,7 +323,7 @@ class config extends common { // Préserver les comptes des utilisateurs d'une version 9 si option cochée // Positionnement d'une variable de session lue au constructeur if ($version === '9') { - $_SESSION['KEEP_USERS'] = $this->getInput('configManageImportUser', helper::FILTER_BOOLEAN); + $_SESSION['KEEP_USERS'] = $this->getInput('configRestoreImportUser', helper::FILTER_BOOLEAN); } // Extraire le zip @@ -326,13 +334,13 @@ class config extends common { // Restaurer les users originaux d'une v10 si option cochée if (!empty($users) && $version === '10' && - $this->getInput('configManageImportUser', helper::FILTER_BOOLEAN) === true) { + $this->getInput('configRestoreImportUser', helper::FILTER_BOOLEAN) === true) { $this->setData(['user',$users]); } // Message de notification $notification = $success === true ? 'Sauvegarde importée avec succès' : 'Erreur d\'extraction'; - $redirect = $this->getInput('configManageImportUser', helper::FILTER_BOOLEAN) === true ? helper::baseUrl() . 'config/manage' : helper::baseUrl() . 'user/login/'; + $redirect = $this->getInput('configRestoreImportUser', helper::FILTER_BOOLEAN) === true ? helper::baseUrl() . 'config/restore' : helper::baseUrl() . 'user/login/'; // Valeurs en sortie erreur $this->addOutput([ 'notification' => $notification, @@ -343,8 +351,8 @@ class config extends common { // Valeurs en sortie $this->addOutput([ - 'title' => 'Sauvegarder / Restaurer', - 'view' => 'manage' + 'title' => 'Restaurer', + 'view' => 'restore' ]); } @@ -475,7 +483,7 @@ class config extends common { // Valeurs en sortie $this->addOutput([ 'notification' => $success ? 'Conversion effectuée' : 'Aucune conversion', - 'redirect' => helper::baseUrl() . 'config/manage', + 'redirect' => helper::baseUrl() . 'config/restore', 'state' => $success ? true : false ]); } diff --git a/core/module/config/view/backup/backup.php b/core/module/config/view/backup/backup.php new file mode 100644 index 00000000..1d4716fc --- /dev/null +++ b/core/module/config/view/backup/backup.php @@ -0,0 +1,33 @@ + +
+
+ 'buttonGrey', + 'href' => helper::baseUrl() . 'config', + 'ico' => 'left', + 'value' => 'Retour' + ]); ?> +
+
+ 'Télécharger', + 'ico' => 'download' + ]); ?> +
+
+
+
+
+

Option de sauvegarde

+
+
+ true, + 'help' => 'Cette option n\'est pas recommandée lorsque le contenu du gestionnaire de fichiers est très volumineux.' + ]); ?> +
+
+
+
+
+ diff --git a/core/module/config/view/index/index.php b/core/module/config/view/index/index.php index 281900b8..1a2a6507 100755 --- a/core/module/config/view/index/index.php +++ b/core/module/config/view/index/index.php @@ -7,14 +7,8 @@ 'ico' => 'home', 'value' => 'Accueil' ]); ?> - -
- helper::baseUrl() . 'config/manage', - 'value' => 'Sauvegarder / Restaurer' - ]); ?> -
-
+
+
@@ -116,29 +110,23 @@
-
- $this->getData(['config', 'autoBackup']), - 'help' => '

Une archive contenant le dossier /site/data est copiée dans le dossier \'site/backup\'. La sauvegarde est conservée pendant 30 jours.

Le contenu du gestionnaire de fichiers n\'est pas sauvegardé.

' +
+ $this->getData(['config', 'maintenance']) ]); ?> -
+
$this->getData(['config', 'autoUpdate']), 'help' => 'Vérification quotidienne des mises à jour.' ]); ?> -
-
-
-
- $this->getData(['config', 'maintenance']) - ]); ?> -
+
-
+
+
+

Réseaux sociaux

@@ -205,6 +193,35 @@
+
+
+
+
+

Sauvegarde et restauration

+
+
+ $this->getData(['config', 'autoBackup']), + 'help' => '

Une archive contenant le dossier /site/data est copiée dans le dossier \'site/backup\'. La sauvegarde est conservée pendant 30 jours.

Le contenu du gestionnaire de fichiers n\'est pas sauvegardé.

' + ]); ?> +
+
+
+
+ helper::baseUrl() . 'config/backup', + 'value' => 'Sauvegarder' + ]); ?> +
+
+ helper::baseUrl() . 'config/restore', + 'value' => 'Restaurer' + ]); ?> +
+
+
+

Référencement

@@ -224,13 +241,11 @@
- +
- -
+
- 'buttonGrey', 'href' => helper::baseUrl() . 'config', 'ico' => 'left', 'value' => 'Retour' ]); ?>
+
+ 'Restaurer', + 'ico' => 'upload' + ]); ?> +
-
-
-

Sauvegarde totale du site

-
-
- helper::baseUrl() . 'config/backup', - 'value' => 'Générer et télécharger
les données de site', - ]); ?> -
-
-
-
- true, - 'disabled' => true, - 'help' => 'Cette option n\'est pas recommandée lorsque le contenu du gestionnaire de fichiers est très volumineux.' - ]); ?> -
-
-
-
-
+

Restauration ou transfert d'un site

-
- + 'Sélectionnez une archive au format ZIP', 'type' => 2, 'help' => 'L\'archive a été déposée dans le gestionaire de fichiers. Les archives inférieures à la version 9 ne sont pas acceptées.' @@ -45,17 +29,12 @@
-
- + true, 'help' => 'Les données des utilisateurs installés ne sont pas écrasés par la restauration quand l\'option est active.' ]); ?>
-
- 'Restaurer' - ]); ?> -
@@ -77,7 +56,7 @@ $baseUrlValue = $this->getData(['core', 'baseUrl']); $buttonClass = (helper::baseUrl(true,false) !== $this->getData(['core', 'baseUrl']) ) ? '' : 'disabled'; } - echo template::text('configManageBaseURLToConvert', [ + echo template::text('configRestoreBaseURLToConvert', [ 'label' => 'Dossier d\'installation de l\'archive' , 'value' => $baseUrlValue, 'readonly' => true, @@ -85,7 +64,7 @@ ]); ?>
- 'Dossier du site actuel', 'value' => helper::baseUrl(true,false), 'readonly' => true, @@ -93,7 +72,7 @@ ]); ?>
- helper::baseUrl() . 'config/updateBaseUrl', 'class' => $buttonClass, 'value' => 'convertir' @@ -103,5 +82,4 @@
-