From a90f444182d1945d0a3f834172cba42f5a03e96a Mon Sep 17 00:00:00 2001 From: Kijin Sung Date: Sun, 17 Nov 2024 20:43:40 +0900 Subject: [PATCH] Block voting and reporting from spam IP #2423 --- modules/spamfilter/conf/module.xml | 6 ++- modules/spamfilter/spamfilter.controller.php | 44 ++++++++++++++++++++ 2 files changed, 49 insertions(+), 1 deletion(-) diff --git a/modules/spamfilter/conf/module.xml b/modules/spamfilter/conf/module.xml index 76ed5c668..00440ac48 100644 --- a/modules/spamfilter/conf/module.xml +++ b/modules/spamfilter/conf/module.xml @@ -17,11 +17,15 @@ + - + + + + diff --git a/modules/spamfilter/spamfilter.controller.php b/modules/spamfilter/spamfilter.controller.php index 815bead6a..435aa3802 100644 --- a/modules/spamfilter/spamfilter.controller.php +++ b/modules/spamfilter/spamfilter.controller.php @@ -182,6 +182,50 @@ class SpamfilterController extends Spamfilter return $output; } + /** + * Block voting from a spam IP. + */ + function triggerVote(&$obj) + { + if ($_SESSION['avoid_log']) + { + return; + } + + if ($this->user->isAdmin() || (Context::get('grant')->manager ?? false)) + { + return; + } + + $output = SpamfilterModel::getInstance()->isDeniedIP(); + if (!$output->toBool()) + { + return $output; + } + } + + /** + * Block reporting from a spam IP. + */ + function triggerDeclare(&$obj) + { + if ($_SESSION['avoid_log']) + { + return; + } + + if ($this->user->isAdmin() || (Context::get('grant')->manager ?? false)) + { + return; + } + + $output = SpamfilterModel::getInstance()->isDeniedIP(); + if (!$output->toBool()) + { + return $output; + } + } + /** * @brief The routine process to check the time it takes to store a message, when writing it, and to ban IP/word */