diff --git a/core/core.php b/core/core.php
index 0b6930bc..7fb63773 100644
--- a/core/core.php
+++ b/core/core.php
@@ -362,10 +362,6 @@ class common {
'fontWeight' => 'normal',
'textColor' => 'rgba(74, 105, 189, 1)',
'textTransform' => 'none'
- ],
- 'block' => [
- 'contentLeft' => '',
- 'contentRight' => ''
]
]
];
@@ -1000,8 +996,8 @@ class common {
// Version 9.0.0
if($this->getData(['core', 'dataVersion']) < 900) {
$this->setData(['theme', 'site', 'blocks','100']);
- $this->setData(['theme', 'block', 'contentLeft','']);
- $this->setData(['theme', 'block', 'contentRight','']);
+ $this->setData(['page', 'blockLeft', 'content','']);
+ $this->setData(['page', 'blockRight', 'content','']);
$this->setData(['core', 'dataVersion', 900]);
$this->SaveData();
}
@@ -2138,13 +2134,17 @@ class layout extends common {
if($this->getUser('group') >= self::GROUP_MODERATOR) {
$leftItems .= '
';
$leftItems .= '' . template::ico('plus') . '';
if(
diff --git a/core/layout/main.php b/core/layout/main.php
index c4ad95c9..48babb48 100755
--- a/core/layout/main.php
+++ b/core/layout/main.php
@@ -120,6 +120,7 @@
$this->getUrl(0) === 'config' OR
$this->getUrl(0) === 'install' OR
$this->getUrl(0) === 'maintenance' OR
+ $this->getUrl(0) === 'page' OR
$this->getUrl(0) === 'user' ) { ?>
-
getData(['theme','block','contentLeft']);?>
+
getData(['page','blockLeft','content']);?>
showContent(); ?>
-
getData(['theme','block','contentRight']);?>
+
getData(['page','blockRight','content']);?>
diff --git a/core/module/page/page.php b/core/module/page/page.php
index 2f3d0cdf..8f3b92c6 100755
--- a/core/module/page/page.php
+++ b/core/module/page/page.php
@@ -17,7 +17,8 @@ class page extends common {
public static $actions = [
'add' => self::GROUP_MODERATOR,
'delete' => self::GROUP_MODERATOR,
- 'edit' => self::GROUP_MODERATOR
+ 'edit' => self::GROUP_MODERATOR,
+ 'block' => self::GROUP_ADMIN
];
public static $pagesNoParentId = [
'' => 'Aucune'
@@ -31,9 +32,9 @@ class page extends common {
];
// Position du module
public static $modulePosition = [
- 'bottom' => 'En bas',
- 'top' => 'En haut',
- 'free' => 'Libre'
+ 'bottom' => 'En bas',
+ 'top' => 'En haut',
+ 'free' => 'Libre'
];
/**
@@ -117,6 +118,66 @@ class page extends common {
}
}
+
+ /**
+ * Édition des blocs
+ */
+ public function block () {
+ if($this->isPost()) {
+ $this->setData([
+ 'page',
+ 'blockLeft', [
+ 'typeMenu' => 'text',
+ 'iconUrl' => '',
+ 'disable' => true,
+ 'hideTitle' => false,
+ 'metaDescription' => '',
+ 'metaTitle' => '',
+ 'moduleId' => '',
+ 'parentPageId' => '',
+ 'modulePosition' => 'bottom',
+ 'position' => 0,
+ 'group' => self::GROUP_VISITOR,
+ 'targetBlank' => false,
+ 'title' => 'blockLeft',
+ 'content' => (empty($this->getInput('pageBlockLeftContent', null)) ? "" : $this->getInput('pageBlockLeftContent', null))]
+ ]);
+ $this->setData([
+ 'page',
+ 'blockRight', [
+ 'typeMenu' => 'text',
+ 'iconUrl' => '',
+ 'disable' => true,
+ 'hideTitle' => false,
+ 'metaDescription' => '',
+ 'metaTitle' => '',
+ 'moduleId' => '',
+ 'parentPageId' => '',
+ 'modulePosition' => 'bottom',
+ 'position' => 0,
+ 'group' => self::GROUP_VISITOR,
+ 'targetBlank' => false,
+ 'title' => 'blockRight',
+ 'content' => (empty($this->getInput('pageBlockRightContent', null)) ? "" : $this->getInput('pageBlockRightContent', null))]
+ ]);
+ $this->addOutput([
+ 'redirect' => helper::baseUrl(),
+ 'notification' => 'Modifications enregistrées',
+ 'state' => true
+ ]);
+ }
+
+ // Valeurs en sortie
+ $this->addOutput([
+ 'title' => 'Édition des blocs',
+ 'vendor' => [
+ 'tinymce'
+ ],
+ 'view' => 'block'
+ ]);
+ }
+
+
/**
* Édition
*/
diff --git a/core/module/page/view/block/block.js.php b/core/module/page/view/block/block.js.php
new file mode 100644
index 00000000..d21cf5f7
--- /dev/null
+++ b/core/module/page/view/block/block.js.php
@@ -0,0 +1,102 @@
+/**
+ * This file is part of Zwii.
+ *
+ * For full copyright and license information, please see the LICENSE
+ * file that was distributed with this source code.
+ *
+ * @author Rémi Jean
+ * @copyright Copyright (C) 2008-2018, Rémi Jean
+ * @license GNU General Public License, version 3
+ * @link http://zwiicms.com/
+ */
+
+/**
+ * Confirmation de suppression
+ */
+$("#pageEditDelete").on("click", function() {
+ var _this = $(this);
+ return core.confirm("Êtes-vous sûr de vouloir supprimer cette page ?", function() {
+ $(location).attr("href", _this.attr("href"));
+ });
+});
+
+/**
+ * Bloque/Débloque le bouton de configuration au changement de module
+ */
+var pageEditModuleIdDOM = $("#pageEditModuleId");
+pageEditModuleIdDOM.on("change", function() {
+ if($(this).val() === "") {
+ $("#pageEditModuleConfig").addClass("disabled");
+ $("#pageEditContentContainer").slideDown();
+ }
+ else {
+ $("#pageEditModuleConfig").removeClass("disabled");
+ $("#pageEditContentContainer").slideUp();
+ }
+});
+
+/**
+ * Soumission du formulaire pour éditer le module
+ */
+$("#pageEditModuleConfig").on("click", function() {
+ $("#pageEditModuleRedirect").val(1);
+ $("#pageEditForm").trigger("submit");
+});
+
+/**
+ * Affiche les pages en fonction de la page parent dans le choix de la position
+ */
+var hierarchy = getHierarchy()); ?>;
+var pages = getData(['page'])); ?>;
+$("#pageEditParentPageId").on("change", function() {
+ var positionDOM = $("#pageEditPosition");
+ positionDOM.empty().append(
+ $("