From 8abcb9f823607fde9142c0557943f9722728769c Mon Sep 17 00:00:00 2001 From: fredtempez Date: Wed, 26 Feb 2020 23:45:49 +0100 Subject: [PATCH] =?UTF-8?q?[9.2.23]=20fonction=20d=C3=A9pr=C3=A9ci=C3=A9e?= =?UTF-8?q?=20et=20replyto=20dans=20form?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGES.md | 8 ++++++++ core/core.php | 10 +++++++--- core/module/install/install.php | 3 ++- core/module/user/user.php | 6 ++++-- core/vendor/tinymce/init.js | 6 +++--- module/blog/blog.php | 3 ++- module/form/form.php | 11 +++++++++-- module/form/view/config/config.php | 12 ++++++++++-- 8 files changed, 45 insertions(+), 14 deletions(-) diff --git a/CHANGES.md b/CHANGES.md index 0629e175..4c83fe0e 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,5 +1,13 @@ # Changelog +## version 9.2.23 +- Correction : + - Fonction magic_quotes dépréciée supprimée. +Modifications : + - TinyMCE : libellé des fonctions "Afficher dans" + - TinyMCE : boutons souligné et barré dans la barre d'outils. + - Module Form : Opion permettant d'ajouter le premier mail dans le formulaire au message de notification (Reply To) afin de répondre directement au message. + ## version 9.2.22 - Modifications : - Aperçu de la police dans les sélecteurs. diff --git a/core/core.php b/core/core.php index da4ca366..c2329df9 100644 --- a/core/core.php +++ b/core/core.php @@ -738,7 +738,7 @@ class common { * @param string $content Contenu * @return bool */ - public function sendMail($to, $subject, $content) { + public function sendMail($to, $subject, $content, $replyTo = '') { // Utilisation de PHPMailer version 6.0.6 require_once "core/vendor/phpmailer/phpmailer.php"; require_once "core/vendor/phpmailer/exception.php"; @@ -753,7 +753,11 @@ class common { $mail->CharSet = 'UTF-8'; $host = str_replace('www.', '', $_SERVER['HTTP_HOST']); $mail->setFrom('no-reply@' . $host, $this->getData(['config', 'title'])); - $mail->addReplyTo('no-reply@' . $host, $this->getData(['config', 'title'])); + if (empty($replyTo)) { + $mail->addReplyTo('no-reply@' . $host, $this->getData(['config', 'title'])); + } else { + $mail->addReplyTo($replyTo); + } if(is_array($to)) { foreach($to as $userMail) { $mail->addAddress($userMail); @@ -1807,7 +1811,7 @@ class helper { $text = filter_var($text, FILTER_SANITIZE_URL); break; } - return get_magic_quotes_gpc() ? stripslashes($text) : $text; + return $text; } /** diff --git a/core/module/install/install.php b/core/module/install/install.php index 48846637..e649b0bb 100755 --- a/core/module/install/install.php +++ b/core/module/install/install.php @@ -97,7 +97,8 @@ class install extends common { 'Bonjour' . ' ' . $userFirstname . ' ' . $userLastname . ',

' . 'Voici les détails de votre installation.

' . 'URL du site : ' . helper::baseUrl(false) . '
' . - 'Identifiant du compte : ' . $this->getInput('installId') . '
' + 'Identifiant du compte : ' . $this->getInput('installId') . '
', + null ); // Générer un fichier robots.txt $this->createRobots(); diff --git a/core/module/user/user.php b/core/module/user/user.php index d8374c1c..938f6c6f 100755 --- a/core/module/user/user.php +++ b/core/module/user/user.php @@ -80,7 +80,8 @@ class user extends common { 'Un administrateur vous a créé un compte sur le site ' . $this->getData(['config', 'title']) . '. Vous trouverez ci-dessous les détails de votre compte.

' . 'Identifiant du compte : ' . $this->getInput('userAddId') . '
' . 'Mot de passe du compte : ' . $this->getInput('userAddPassword') . '

' . - 'Nous ne conservons pas les mots de passe, par conséquence nous vous conseillons de garder ce mail tant que vous ne vous êtes pas connecté. Vous pourrez modifier votre mot de passe après votre première connexion.' + 'Nous ne conservons pas les mots de passe, par conséquence nous vous conseillons de garder ce mail tant que vous ne vous êtes pas connecté. Vous pourrez modifier votre mot de passe après votre première connexion.', + null ); } // Valeurs en sortie @@ -268,7 +269,8 @@ class user extends common { 'Bonjour ' . $this->getData(['user', $userId, 'firstname']) . ' ' . $this->getData(['user', $userId, 'lastname']) . ',

' . 'Vous avez demandé à changer le mot de passe lié à votre compte. Vous trouverez ci-dessous un lien vous permettant de modifier celui-ci.

' . '' . helper::baseUrl() . 'user/reset/' . $userId . '/' . $uniqId . '

' . - 'Si nous n\'avez pas demandé à réinitialiser votre mot de passe, veuillez ignorer ce mail.' + 'Si nous n\'avez pas demandé à réinitialiser votre mot de passe, veuillez ignorer ce mail.', + null ); // Valeurs en sortie $this->addOutput([ diff --git a/core/vendor/tinymce/init.js b/core/vendor/tinymce/init.js index 9a0aaa45..bd1188d5 100755 --- a/core/vendor/tinymce/init.js +++ b/core/vendor/tinymce/init.js @@ -20,7 +20,7 @@ tinymce.init({ // Plugins plugins: "advlist anchor autolink autoresize autosave codemirror codesample colorpicker contextmenu fullscreen hr image imagetools link lists media paste searchreplace stickytoolbar tabfocus table template textcolor visualblocks", // Contenu de la barre d'outils - toolbar: "restoredraft | undo redo | styleselect | bold italic forecolor backcolor | alignleft aligncenter alignright alignjustify | bullist numlist | insert | code visualblocks fullscreen", + toolbar: "restoredraft | undo redo | styleselect | bold italic underline strikethrough forecolor backcolor | alignleft aligncenter alignright alignjustify | bullist numlist | insert | code visualblocks fullscreen", // CodeMirror codemirror: { indentOnInit: true, // Whether or not to indent code on init. @@ -42,8 +42,8 @@ tinymce.init({ // Target pour lightbox rel_list: [ {title: 'None', value: ''}, - {title: 'Popup intégrée (Lity)', value: 'data-lity'}, - {title: 'Diaporama d\'images (SimpleLightbox)', value: 'gallery'} + {title: 'Une popup (Lity)', value: 'data-lity'}, + {title: 'Une galerie d\'images (SimpleLightbox)', value: 'gallery'} ], // Titre des image image_title: true, diff --git a/module/blog/blog.php b/module/blog/blog.php index dde19223..c5dd86aa 100644 --- a/module/blog/blog.php +++ b/module/blog/blog.php @@ -352,7 +352,8 @@ class blog extends common { $to, 'Nouveau commentaire', 'Bonjour' . ' ' . $user['firstname'] . ' ' . $user['lastname'] . ',

' . - 'Nouveau commentaire déposé sur la page "' . $this->getData(['page', $this->getUrl(0), 'title']) . '" :

' + 'Nouveau commentaire déposé sur la page "' . $this->getData(['page', $this->getUrl(0), 'title']) . '" :

', + '' ); // Valeurs en sortie $this->addOutput([ diff --git a/module/form/form.php b/module/form/form.php index 44a57a3b..4e3e0b7a 100644 --- a/module/form/form.php +++ b/module/form/form.php @@ -88,7 +88,8 @@ class form extends common { 'user' => self::$listUsers [$this->getInput('formConfigUser', helper::FILTER_INT)], 'mail' => $this->getInput('formConfigMail') , 'pageId' => $pageId, - 'subject' => $this->getInput('formConfigSubject') + 'subject' => $this->getInput('formConfigSubject'), + 'replyto' => $this->getInput('formConfigMailReplyTo', helper::FILTER_BOOLEAN) ] ]); // Génération des données vides @@ -295,6 +296,7 @@ class form extends common { // Préparation le contenu du mail $data = []; $content = ''; + $replyTo = ''; foreach($this->getData(['module', $this->getUrl(0), 'input']) as $index => $input) { // Filtre la valeur switch($input['type']) { @@ -314,6 +316,10 @@ class form extends common { $filter = helper::FILTER_STRING_SHORT; } $value = $this->getInput('formInput[' . $index . ']', $filter, $input['required']) === true ? 'X' : $this->getInput('formInput[' . $index . ']', $filter, $input['required']); + // Champ reply ajouté au mail + if ($this->getData(['module', $this->getUrl(0), 'config', 'replyto']) === true && $filter === helper::FILTER_MAIL) { + $replyTo = $value; + } // Préparation des données pour la création dans la base $data[$this->getData(['module', $this->getUrl(0), 'input', $index, 'name'])] = $value; // Préparation des données pour le mail @@ -364,7 +370,8 @@ class form extends common { $to, $subject, 'Nouveau message en provenance de la page "' . $this->getData(['page', $this->getUrl(0), 'title']) . '" :

' . - $content + $content, + $replyTo ); } } diff --git a/module/form/view/config/config.php b/module/form/view/config/config.php index 4ba4403b..00cfc33e 100644 --- a/module/form/view/config/config.php +++ b/module/form/view/config/config.php @@ -83,7 +83,7 @@ !empty($this->getData(['module', $this->getUrl(0), 'config', 'mail'])), 'help' => 'Sélectionnez au moins un groupe, un utilisateur ou saississez un email. Votre serveur doit autoriser les envois de mail.' ]); ?> -
+
+
+
+ (bool) $this->getData(['module', $this->getUrl(0), 'config', 'replyto']), + 'help' => 'Cette option permet de réponse drectement à l\'expéditeur du message si celui-ci a indiqué un email valide.' + ]); ?> +
+
@@ -133,7 +141,7 @@ 'selected' => $this->getData(['module', $this->getUrl(0), 'config', 'pageId']) ]); ?>
-
+
$this->getData(['module', $this->getUrl(0), 'config', 'capcha']) ]); ?>