From 0a9a8c52c74afcc617953a2507c63dd29b164062 Mon Sep 17 00:00:00 2001 From: Pierre-Lin Bonnemaison Date: Tue, 22 Sep 2015 16:50:52 +0200 Subject: [PATCH] Ajout des reglages pour la detection d'url dans les discussions --- controllers/settings.php | 40 ++++++++++++++++++++++++++++++++++ createDatabase.sql | 3 ++- templates/discussions/show.php | 6 +++-- templates/settings/default.php | 19 ++++++++++++++++ 4 files changed, 65 insertions(+), 3 deletions(-) diff --git a/controllers/settings.php b/controllers/settings.php index f79cec8..df1757d 100755 --- a/controllers/settings.php +++ b/controllers/settings.php @@ -106,4 +106,44 @@ header('Location: ' . $this->generateUrl('settings')); return true; } + + /** + * Cette fonction permet de mettre à jour l'activation ou la désactivation de la detection d'URL dans les discussions + * @param $csrf : Le jeton CSRF + * @param string $_POST['detect_url'] : Le nouveau stop + * @return void; + */ + public function changeDetectionUrl($csrf) + { + //On vérifie que le jeton csrf est bon + if (!internalTools::verifyCSRF($csrf)) + { + $_SESSION['errormessage'] = 'Jeton CSRF invalide !'; + header('Location: ' . $this->generateUrl('settings')); + return false; + } + + //Creation de l'object de base de données + global $db; + + if (!isset($_POST['detect_url'])) + { + $_SESSION['errormessage'] = 'Vous devez renseigner un valeur'; + header('Location: ' . $this->generateUrl('settings')); + return false; + } + + $detectUrl = (int)$_POST['detect_url']; + + if (!$db->updateTableWhere('settings', ['value' => $detectUrl], ['name' => 'detect_url'])) + { + $_SESSION['errormessage'] = 'Impossible de mettre les données à jour.'; + header('Location: ' . $this->generateUrl('settings')); + return false; + } + + $_SESSION['successmessage'] = 'Les données ont été mises à jour.'; + header('Location: ' . $this->generateUrl('settings')); + return true; + } } diff --git a/createDatabase.sql b/createDatabase.sql index 31f72a3..aeecfe6 100755 --- a/createDatabase.sql +++ b/createDatabase.sql @@ -146,4 +146,5 @@ CREATE TABLE IF NOT EXISTS sms_stop #On insert les données par défaut dans les settings INSERT INTO settings (name, value) VALUES ('transfer', '1'), -VALUES ('sms_stop', '1'); +('sms_stop', '1'), +('detect_url', '1'); diff --git a/templates/discussions/show.php b/templates/discussions/show.php index 1fa2a8c..5222b1d 100755 --- a/templates/discussions/show.php +++ b/templates/discussions/show.php @@ -65,8 +65,10 @@ $.each(data.messages, function(key, message) { - //On ajoute la detection de lien dans le texte du message - message.text = Autolinker.link(message.text, {newWindow:true}); + + //On ajoute la detection de lien dans le texte du message + message.text = Autolinker.link(message.text, {newWindow:true}); + switch (message.type) { diff --git a/templates/settings/default.php b/templates/settings/default.php index 66b9350..f7ae82f 100755 --- a/templates/settings/default.php +++ b/templates/settings/default.php @@ -54,6 +54,25 @@ +
+
+

Détection des URL dans les discussions

+
+
+
+
+ + +
+
+ +
+
+
+