diff --git a/CHANGES.md b/CHANGES.md index 0818cdaa..24751797 100755 --- a/CHANGES.md +++ b/CHANGES.md @@ -13,6 +13,8 @@ - Suppression des commentaires en masse. - Limiter l'édition des articles et des commentaires à l'id de l'éditeur - Approbation des commentaires + - Gestion des thèmes : + - Bouton de réinitialisation avec confirmation ## version 10.3.04 - Corrections : diff --git a/core/module/theme/theme.php b/core/module/theme/theme.php index 8d826ab8..d62d7543 100644 --- a/core/module/theme/theme.php +++ b/core/module/theme/theme.php @@ -24,7 +24,6 @@ class theme extends common { 'index' => self::GROUP_ADMIN, 'menu' => self::GROUP_ADMIN, 'reset' => self::GROUP_ADMIN, - 'resetAdmin' => self::GROUP_ADMIN, 'site' => self::GROUP_ADMIN, 'admin' => self::GROUP_ADMIN, 'manage' => self::GROUP_ADMIN, @@ -535,29 +534,32 @@ class theme extends common { */ public function reset() { // Supprime le fichier de personnalisation avancée - unlink(self::DATA_DIR.'custom.css'); + $redirect =''; + switch ($this->getUrl(2)) { + case 'admin': + $this->initData('admin'); + $redirect = helper::baseUrl() . 'theme/admin'; + break; + case 'manage': + $this->initData('theme'); + $redirect = helper::baseUrl() . 'theme/manage'; + break; + case 'custom': + unlink(self::DATA_DIR.'custom.css'); + $redirect = helper::baseUrl() . 'theme/advanced'; + break; + default : + $redirect = helper::baseUrl() . 'theme'; + } + // Valeurs en sortie $this->addOutput([ - 'notification' => 'Personnalisation avancée réinitialisée', - 'redirect' => helper::baseUrl() . 'theme/advanced', + 'notification' => 'Réinitialisation effectuée', + 'redirect' => $redirect, 'state' => true ]); } - /** - * Réinitialisation de la personnalisation avancée - */ - public function resetAdmin() { - // Supprime le fichier de personnalisation avancée - //unlink(self::DATA_DIR.'admin.json'); - $this->initData('admin'); - // Valeurs en sortie - $this->addOutput([ - 'notification' => 'Thème réinitialisé', - 'redirect' => helper::baseUrl() . 'theme/admin', - 'state' => true - ]); - } /** * Options du site @@ -635,7 +637,7 @@ class theme extends common { ) { $mode = 'admin'; } - if (!empty($modele) + if (!empty($modele) ) { // traiter l'archive $success = $zip->extractTo('.'); diff --git a/core/module/theme/view/admin/admin.js.php b/core/module/theme/view/admin/admin.js.php index 351891f5..e62011e2 100644 --- a/core/module/theme/view/admin/admin.js.php +++ b/core/module/theme/view/admin/admin.js.php @@ -46,3 +46,13 @@ $("input, select").on("change", function() { .appendTo("head"); }); + +/** + * Confirmation de réinitialisation + */ +$("#configAdminReset").on("click", function() { + var _this = $(this); + return core.confirm("Êtes-vous sûr de vouloir réinitialiser à son état d'origine le thème de l\'administration ?", function() { + $(location).attr("href", _this.attr("href")); + }); +}); diff --git a/core/module/theme/view/admin/admin.php b/core/module/theme/view/admin/admin.php index 97a57706..134e4bba 100644 --- a/core/module/theme/view/admin/admin.php +++ b/core/module/theme/view/admin/admin.php @@ -16,7 +16,7 @@