From 572c5819d656d63f6b87e8fc54d8f561d6c3b9e3 Mon Sep 17 00:00:00 2001 From: Byron Jones Date: Tue, 22 Apr 2014 22:56:28 +0800 Subject: Bug 936509: Automatically disable accounts based on the number of comments tagged as spam --- extensions/AntiSpam/lib/Config.pm | 54 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 extensions/AntiSpam/lib/Config.pm (limited to 'extensions/AntiSpam/lib') diff --git a/extensions/AntiSpam/lib/Config.pm b/extensions/AntiSpam/lib/Config.pm new file mode 100644 index 000000000..dc3e2820f --- /dev/null +++ b/extensions/AntiSpam/lib/Config.pm @@ -0,0 +1,54 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# This Source Code Form is "Incompatible With Secondary Licenses", as +# defined by the Mozilla Public License, v. 2.0. + +package Bugzilla::Extension::AntiSpam::Config; + +use strict; +use warnings; + +use Bugzilla::Config::Common; +use Bugzilla::Group; + +our $sortkey = 511; + +sub get_param_list { + my ($class) = @_; + + my @param_list = ( + { + name => 'antispam_spammer_exclude_group', + type => 's', + choices => \&_get_all_group_names, + default => 'canconfirm', + checker => \&check_group + }, + { + name => 'antispam_spammer_comment_count', + type => 't', + default => '3', + checker => \&check_numeric + }, + { + name => 'antispam_spammer_disable_text', + type => 'l', + default => + "This account has been automatically disabled as a result of a " . + "high number of spam comments.\n\nPlease contact the address at ". + "the end of this message if you believe this to be an error." + }, + ); + + return @param_list; +} + +sub _get_all_group_names { + my @group_names = map {$_->name} Bugzilla::Group->get_all; + unshift(@group_names, ''); + return \@group_names; +} + +1; -- cgit v1.2.3-24-g4f1b