diff --git a/core/core.php b/core/core.php
old mode 100755
new mode 100644
diff --git a/core/vendor/filemanager/config/config.php b/core/vendor/filemanager/config/config.php
index 79ac9f01..92ea29d2 100755
--- a/core/vendor/filemanager/config/config.php
+++ b/core/vendor/filemanager/config/config.php
@@ -339,7 +339,7 @@ $config = array(
//Allowed extensions (lowercase insert)
//**********************
'ext_img' => array( 'jpg', 'jpeg', 'png', 'gif', 'bmp', 'tiff', 'svg','ico' ), //Images
- 'ext_file' => array( 'doc', 'docx', 'rtf', 'pdf', 'xls', 'xlsx', 'txt', 'csv', 'html', 'xhtml', 'psd', 'sql', 'log', 'fla', 'xml', 'ade', 'adp', 'mdb', 'accdb', 'ppt', 'pptx', 'odt', 'ots', 'ott', 'odb', 'odg', 'otp', 'otg', 'odf', 'ods', 'odp', 'css', 'ai', 'kmz','dwg', 'dxf', 'hpgl', 'plt', 'spl', 'step', 'stp', 'iges', 'igs', 'sat', 'cgm', 'ico'), //Files
+ 'ext_file' => array( 'doc', 'docx', 'rtf', 'pdf', 'xls', 'xlsx', 'txt', 'csv', 'html', 'xhtml', 'psd', 'sql', 'log', 'fla', 'xml', 'ade', 'adp', 'mdb', 'accdb', 'ppt', 'pptx', 'odt', 'ots', 'ott', 'odb', 'odg', 'otp', 'otg', 'odf', 'ods', 'odp', 'css', 'ai', 'kmz','dwg', 'dxf', 'hpgl', 'plt', 'spl', 'step', 'stp', 'iges', 'igs', 'sat', 'cgm', 'php'), //Files
'ext_video' => array( 'mov', 'mpeg', 'm4v', 'mp4', 'avi', 'mpg', 'wma', "flv", "webm" ), //Video
'ext_music' => array( 'mp3', 'mpga', 'm4a', 'ac3', 'aiff', 'mid', 'ogg', 'wav' ), //Audio
'ext_misc' => array( 'zip', 'rar', 'gz', 'tar', 'iso', 'dmg' ), //Archives
diff --git a/module/inclusion/inclusion.php b/module/inclusion/inclusion.php
new file mode 100644
index 00000000..4023d48f
--- /dev/null
+++ b/module/inclusion/inclusion.php
@@ -0,0 +1,72 @@
+
+ * @copyright Copyright (C) 2008-2018, Rémi Jean
+ * @license GNU General Public License, version 3
+ * @link http://zwiicms.com/
+ */
+
+class inclusion extends common {
+
+ public static $actions = [
+ 'config' => self::GROUP_MODERATOR,
+ 'index' => self::GROUP_VISITOR
+ ];
+
+ /**
+ * Configuration
+ */
+ public function config() {
+ // Soumission du formulaire
+ if($this->isPost()) {
+ $this->setData(['module', $this->getUrl(0), 'url', $this->getInput('inclusionConfigUrl', helper::FILTER_URL, true)]);
+ // Valeurs en sortie
+ $this->addOutput([
+ 'redirect' => helper::baseUrl() . $this->getUrl(),
+ 'notification' => 'Modifications enregistrées',
+ 'state' => true
+ ]);
+ }
+ // Valeurs en sortie
+ $this->addOutput([
+ 'title' => 'Configuration du module',
+ 'view' => 'config'
+ ]);
+ }
+
+ /**
+ * Accueil
+ */
+ public function index() {
+ // Message si l'utilisateur peut éditer la page
+ if(
+ $this->getUser('password') === $this->getInput('ZWII_USER_PASSWORD')
+ AND $this->getUser('group') >= self::GROUP_MODERATOR
+ AND $this->getUrl(1) !== 'force'
+ ) {
+ // Valeurs en sortie
+ $this->addOutput([
+ 'display' => self::DISPLAY_LAYOUT_BLANK,
+ 'title' => '',
+ 'view' => 'index'
+ ]);
+ }
+ // Sinon inclusion
+ else {
+ // Incrémente le compteur de clics
+ $this->setData(['module', $this->getUrl(0), 'count', helper::filter($this->getData(['module', $this->getUrl(0), 'count']) + 1, helper::FILTER_INT)]);
+ // Valeurs en sortie
+ $this->addOutput([
+ 'content' => '' ,
+ 'state' => true
+ ]);
+ }
+ }
+
+}
\ No newline at end of file
diff --git a/module/inclusion/view/config/config.php b/module/inclusion/view/config/config.php
new file mode 100644
index 00000000..9e4637d7
--- /dev/null
+++ b/module/inclusion/view/config/config.php
@@ -0,0 +1,37 @@
+
+
+
+ 'buttonGrey',
+ 'href' => helper::baseUrl() . 'page/edit/' . $this->getUrl(0),
+ 'ico' => 'left',
+ 'value' => 'Retour'
+ ]); ?>
+
+
+
+
+
+
+
+
+
inclusion
+ 'Lien d\'inclusion',
+ 'placeholder' => helper::baseUrl() . 'site/file/source/',
+ 'value' => $this->getData(['module', $this->getUrl(0), 'url'])
+ ]); ?>
+
+
+
+
+
Statistiques
+ true,
+ 'label' => 'Nombre de redirections',
+ 'value' => helper::filter($this->getData(['module', $this->getUrl(0), 'count']), helper::FILTER_INT)
+ ]); ?>
+
+
+
+
\ No newline at end of file
diff --git a/module/inclusion/view/index/index.js.php b/module/inclusion/view/index/index.js.php
new file mode 100644
index 00000000..bc393f33
--- /dev/null
+++ b/module/inclusion/view/index/index.js.php
@@ -0,0 +1,32 @@
+
+
+/**
+ * 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/
+ *
+ *
+ **/
+
+if (document.referrer.indexOf("edit") === -1)
+{
+ core.confirm(
+ "Souhaitez-vous accéder à l'interface de modification de la page ? En cas de refus, vous serez redirigé vers l'URL saisie dans le module de redirection.",
+ function() {
+ $(location).attr("href", "page/edit/getUrl(0); ?>");
+ },
+ function() {
+ $(location).attr("href", "getUrl(); ?>/force");
+ }
+ );
+}
+else
+{
+ $(location).attr("href", "");
+}
\ No newline at end of file
diff --git a/module/inclusion/view/index/index.php b/module/inclusion/view/index/index.php
new file mode 100644
index 00000000..595f6370
--- /dev/null
+++ b/module/inclusion/view/index/index.php
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/module/redirection/redirection.php b/module/redirection/redirection.php
old mode 100644
new mode 100755
diff --git a/module/redirection/view/config/config.php b/module/redirection/view/config/config.php
old mode 100644
new mode 100755
diff --git a/module/redirection/view/index/index.js.php b/module/redirection/view/index/index.js.php
old mode 100644
new mode 100755
diff --git a/module/redirection/view/index/index.php b/module/redirection/view/index/index.php
old mode 100644
new mode 100755
diff --git a/site/data/custom.css b/site/data/custom.css
index 07688448..e475c38b 100755
--- a/site/data/custom.css
+++ b/site/data/custom.css
@@ -1,126 +1,134 @@
-/**
- * Voici une feuille de style type, bien entendu vous pouvez ajouter
- * ou supprimer des propriétés CSS en fonction de vos besoins.
- */
-
-/**
- * Éléments principaux
- */
-
-/* Fond du site */
-body {
-}
-
-/* Site */
-#site {
-}
-
-/* Bannière */
-header {
-}
-
-/* Titre de la bannière */
-header span {
-}
-
-/* Menu */
-nav {
-}
-
-/* Items du menu */
-nav a {
-}
-
-/* Items au survol du menu */
-nav a:hover {
-}
-
-/* Item courant du menu */
-nav a.active {
-}
-
-/* Bas de page */
-footer {
-}
-
-/* Liens du bas de page */
-footer a {
-}
-
-/* Réseaux sociaux dans le bas de page */
-#footerSocials {
-}
-
-/* Texte libre dans le bas de page */
-#footerText {
-}
-
-/* Copyright dans le bas de page */
-#footerCopyright {
-}
-
-/**
- * Éléments de contenu
- */
-
-/* Titres */
-h1,
-h2,
-h3,
-h4 {
-}
-
-/* Liens */
-a {
-}
-
-/* Liens au survol */
-a:hover {
-}
-
-/* Liens au clic */
-a:active {
-}
-
-/* Boutons */
-.button,
-button[type='submit'],
-.pagination a {
-}
-
-/* Boutons au survol */
-.button:hover,
-button[type='submit']:hover,
-.pagination a:hover {
-}
-
-/* Boutons au clic */
-.button:active,
-button[type='submit']:active,
-.pagination a:active {
-}
-
-/* Cases à cocher */
-input[type='checkbox']:checked + label:before {
-}
-
-/* Cases à cocher au survol */
-input[type='checkbox']:not(:active):checked:hover + label:before,
-input[type='checkbox']:active + label:before {
-}
-
-/* Champs de formulaire */
-input[type='text'],
-input[type='password'],
-.inputFile,
-select,
-textarea {
-}
-
-/* Champs de formulaire au survol */
-input[type='text']:hover,
-input[type='password']:hover,
-.inputFile:hover,
-select:hover,
-textarea:hover {
-}
\ No newline at end of file
+/**
+ * Voici une feuille de style type, bien entendu vous pouvez ajouter
+ * ou supprimer des propriétés CSS en fonction de vos besoins.
+ */
+
+
+/**
+ * Éléments principaux
+ */
+
+/* Fond du site */
+body {
+}
+
+/* Site */
+#site {
+}
+
+/* Bannière */
+header {
+}
+
+/* Titre de la bannière */
+header span {
+}
+
+/* Menu */
+nav {
+}
+
+/* Items du menu */
+nav a {
+}
+
+/* Items au survol du menu */
+nav a:hover {
+}
+
+/* Item courant du menu */
+nav a.active {
+}
+
+/* Bas de page */
+footer {
+}
+
+/* Liens du bas de page */
+footer a {
+}
+
+/* Réseaux sociaux dans le bas de page */
+#footerSocials {
+}
+
+/* Texte libre dans le bas de page */
+#footerText {
+}
+
+/* Copyright dans le bas de page */
+#footerCopyright {
+}
+
+/**
+ * Éléments de contenu
+ */
+
+/* Titres */
+h1,
+h2,
+h3,
+h4 {
+}
+
+/* Liens */
+a {
+}
+
+/* Liens au survol */
+a:hover {
+}
+
+/* Liens au clic */
+a:active {
+}
+
+/* Boutons */
+.button,
+button[type='submit'],
+.pagination a {
+}
+
+/* Boutons au survol */
+.button:hover,
+button[type='submit']:hover,
+.pagination a:hover {
+}
+
+/* Boutons au clic */
+.button:active,
+button[type='submit']:active,
+.pagination a:active {
+}
+
+/* Cases à cocher */
+input[type='checkbox']:checked + label:before {
+}
+
+/* Cases à cocher au survol */
+input[type='checkbox']:not(:active):checked:hover + label:before,
+input[type='checkbox']:active + label:before {
+}
+
+/* Champs de formulaire */
+input[type='text'],
+input[type='password'],
+.inputFile,
+select,
+textarea {
+}
+
+/* Champs de formulaire au survol */
+input[type='text']:hover,
+input[type='password']:hover,
+.inputFile:hover,
+select:hover,
+textarea:hover {
+}
+
+/* iframe du module Inclusion*/
+iframe {
+ width:100%;
+ height:1000px;
+ border:none;
+}