attachment: Add admin() pagespec to test if the uploading user is a wiki admin.
parent
093e815440
commit
e1ba137317
|
@ -311,6 +311,26 @@ sub match_user ($$;@) { #{{{
|
||||||
}
|
}
|
||||||
} #}}}
|
} #}}}
|
||||||
|
|
||||||
|
sub match_admin ($$;@) { #{{{
|
||||||
|
shift;
|
||||||
|
shift;
|
||||||
|
my %params=@_;
|
||||||
|
|
||||||
|
if (! exists $params{user}) {
|
||||||
|
return IkiWiki::FailReason->new("no user specified");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (defined $params{user} && IkiWiki::is_admin($params{user})) {
|
||||||
|
return IkiWiki::SuccessReason->new("user is an admin");
|
||||||
|
}
|
||||||
|
elsif (! defined $params{user}) {
|
||||||
|
return IkiWiki::FailReason->new("not logged in");
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
return IkiWiki::FailReason->new("user is not an admin");
|
||||||
|
}
|
||||||
|
} #}}}
|
||||||
|
|
||||||
sub match_ip ($$;@) { #{{{
|
sub match_ip ($$;@) { #{{{
|
||||||
shift;
|
shift;
|
||||||
my $ip=shift;
|
my $ip=shift;
|
||||||
|
|
|
@ -3,6 +3,8 @@ ikiwiki (2.66) UNRELEASED; urgency=low
|
||||||
* recentchanges: Fix redirects to non-page files.
|
* recentchanges: Fix redirects to non-page files.
|
||||||
* aggregate: Avoid uninitialized value warnings for pages with no recorded
|
* aggregate: Avoid uninitialized value warnings for pages with no recorded
|
||||||
ctime.
|
ctime.
|
||||||
|
* attachment: Add admin() pagespec to test if the uploading user is a wiki
|
||||||
|
admin.
|
||||||
|
|
||||||
-- Joey Hess <joeyh@debian.org> Thu, 25 Sep 2008 13:45:55 -0400
|
-- Joey Hess <joeyh@debian.org> Thu, 25 Sep 2008 13:45:55 -0400
|
||||||
|
|
||||||
|
|
|
@ -41,6 +41,10 @@ additional tests:
|
||||||
Tests whether the attachment is being uploaded by a user with the
|
Tests whether the attachment is being uploaded by a user with the
|
||||||
specified username. If openid is enabled, an openid can also be put here.
|
specified username. If openid is enabled, an openid can also be put here.
|
||||||
|
|
||||||
|
* adminuser()
|
||||||
|
|
||||||
|
Tests whether the attachment is being uploded by one of the wiki admins.
|
||||||
|
|
||||||
* ip(address)
|
* ip(address)
|
||||||
|
|
||||||
Tests whether the attacment is being uploaded from the specified IP
|
Tests whether the attacment is being uploaded from the specified IP
|
||||||
|
|
Loading…
Reference in New Issue