diff options
author | Byron Jones <glob@mozilla.com> | 2014-04-22 16:56:28 +0200 |
---|---|---|
committer | Byron Jones <glob@mozilla.com> | 2014-04-22 16:56:28 +0200 |
commit | 572c5819d656d63f6b87e8fc54d8f561d6c3b9e3 (patch) | |
tree | 7f50581c885fc11e9c04ad2aab31cc8fe2211dab /extensions/AntiSpam/lib | |
parent | f9c1b976d7b5b6ffb6bf0df58cacaaf640499005 (diff) | |
download | bugzilla-572c5819d656d63f6b87e8fc54d8f561d6c3b9e3.tar.gz bugzilla-572c5819d656d63f6b87e8fc54d8f561d6c3b9e3.tar.xz |
Bug 936509: Automatically disable accounts based on the number of comments tagged as spam
Diffstat (limited to 'extensions/AntiSpam/lib')
-rw-r--r-- | extensions/AntiSpam/lib/Config.pm | 54 |
1 files changed, 54 insertions, 0 deletions
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; |