Mattflaschen has uploaded a new change for review.
https://gerrit.wikimedia.org/r/248229
Change subject: Add RateLimits SpamFilter
......................................................................
Add RateLimits SpamFilter
Change-Id: I883b7b725065a5282fa0c1fc138c48496feea49e
(cherry picked from commit b60d74f96a885c1999591500df3d0c33888bd1c5)
---
M autoload.php
M container.php
A includes/SpamFilter/RateLimits.php
3 files changed, 40 insertions(+), 0 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Flow
refs/changes/29/248229/1
diff --git a/autoload.php b/autoload.php
index ea7ce87..1081dce 100644
--- a/autoload.php
+++ b/autoload.php
@@ -288,6 +288,7 @@
'Flow\\SpamFilter\\ConfirmEdit' => __DIR__ .
'/includes/SpamFilter/ConfirmEdit.php',
'Flow\\SpamFilter\\ContentLengthFilter' => __DIR__ .
'/includes/SpamFilter/ContentLengthFilter.php',
'Flow\\SpamFilter\\Controller' => __DIR__ .
'/includes/SpamFilter/Controller.php',
+ 'Flow\\SpamFilter\\RateLimits' => __DIR__ .
'/includes/SpamFilter/RateLimits.php',
'Flow\\SpamFilter\\SpamBlacklist' => __DIR__ .
'/includes/SpamFilter/SpamBlacklist.php',
'Flow\\SpamFilter\\SpamFilter' => __DIR__ .
'/includes/SpamFilter/SpamFilter.php',
'Flow\\SpamFilter\\SpamRegex' => __DIR__ .
'/includes/SpamFilter/SpamRegex.php',
diff --git a/container.php b/container.php
index f053038..d5c471a 100644
--- a/container.php
+++ b/container.php
@@ -832,9 +832,14 @@
return new Flow\SpamFilter\ContentLengthFilter( $maxCharCount );
};
+$c['controller.ratelimits'] = function( $c ) {
+ return new Flow\SpamFilter\RateLimits;
+};
+
$c['controller.spamfilter'] = function( $c ) {
return new Flow\SpamFilter\Controller(
$c['controller.spamregex'],
+ $c['controller.ratelimits'],
$c['controller.spamblacklist'],
$c['controller.abusefilter'],
$c['controller.confirmedit'],
diff --git a/includes/SpamFilter/RateLimits.php
b/includes/SpamFilter/RateLimits.php
new file mode 100644
index 0000000..b62121b
--- /dev/null
+++ b/includes/SpamFilter/RateLimits.php
@@ -0,0 +1,34 @@
+<?php
+
+namespace Flow\SpamFilter;
+
+use Flow\Model\AbstractRevision;
+use IContextSource;
+use Status;
+use Title;
+
+class RateLimits implements SpamFilter {
+ /**
+ * @param IContextSource $context
+ * @param AbstractRevision $newRevision
+ * @param AbstractRevision|null $oldRevision
+ * @param Title $title
+ * @return Status
+ */
+ public function validate( IContextSource $context, AbstractRevision
$newRevision, AbstractRevision $oldRevision = null, Title $title ) {
+ if ( $context->getUser()->pingLimiter( 'edit' ) ) {
+ return Status::newFatal( 'actionthrottledtext' );
+ }
+
+ return Status::newGood();
+ }
+
+ /**
+ * Checks if RateLimits is enabled.
+ *
+ * @return bool
+ */
+ public function enabled() {
+ return true;
+ }
+}
--
To view, visit https://gerrit.wikimedia.org/r/248229
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I883b7b725065a5282fa0c1fc138c48496feea49e
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Flow
Gerrit-Branch: wmf/1.27.0-wmf.3
Gerrit-Owner: Mattflaschen <[email protected]>
Gerrit-Reviewer: Legoktm <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits