aboutsummaryrefslogtreecommitdiff
path: root/IkiWiki/UserInfo.pm
diff options
context:
space:
mode:
authorjoey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071>2006-10-28 00:35:33 +0000
committerjoey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071>2006-10-28 00:35:33 +0000
commitb6509c74a96ee5b16c774c5365f5ab6e542d180b (patch)
tree7c189fa7bb53d31a1381d25e79e84fa9d022e38d /IkiWiki/UserInfo.pm
parented463de21f4229a2e25083c623d8f8b8bab6138f (diff)
downloadikiwiki-b6509c74a96ee5b16c774c5365f5ab6e542d180b.tar
ikiwiki-b6509c74a96ee5b16c774c5365f5ab6e542d180b.tar.gz
* Add basic spam fighting tool for admins: An admin's prefs page now allows
editing a list of banned users who are not allowed to log in.
Diffstat (limited to 'IkiWiki/UserInfo.pm')
-rw-r--r--IkiWiki/UserInfo.pm18
1 files changed, 18 insertions, 0 deletions
diff --git a/IkiWiki/UserInfo.pm b/IkiWiki/UserInfo.pm
index a944cafa6..ae63d8023 100644
--- a/IkiWiki/UserInfo.pm
+++ b/IkiWiki/UserInfo.pm
@@ -67,6 +67,24 @@ sub is_admin ($) { #{{{
return grep { $_ eq $user_name } @{$config{adminuser}};
} #}}}
+sub get_banned_users () { #{{{
+ my @ret;
+ my $userinfo=userinfo_retrieve();
+ foreach my $user (keys %{$userinfo}) {
+ push @ret, $user if $userinfo->{$user}->{banned};
+ }
+ return @ret;
+} #}}}
+
+sub set_banned_users (@) { #{{{
+ my %banned=map { $_ => 1 } @_;
+ my $userinfo=userinfo_retrieve();
+ foreach my $user (keys %{$userinfo}) {
+ $userinfo->{$user}->{banned} = $banned{$user};
+ }
+ return userinfo_store($userinfo);
+} #}}}
+
sub commit_notify_list ($@) { #{{{
my $committer=shift;