diff options
author | Joey Hess <joey@kitenet.net> | 2010-08-30 17:58:00 -0400 |
---|---|---|
committer | Joey Hess <joey@kitenet.net> | 2010-08-30 17:58:00 -0400 |
commit | 8030ecac02a743e930e480650e8c14413f26d9a2 (patch) | |
tree | 2071069ca012fd65906fc0696d64ecb467cf8061 /IkiWiki | |
parent | 2b2d777321267af82c5230df35d5c40b65bd8424 (diff) | |
download | ikiwiki-8030ecac02a743e930e480650e8c14413f26d9a2.tar ikiwiki-8030ecac02a743e930e480650e8c14413f26d9a2.tar.gz |
Receive: avoid hiding check_canedit error messages
Avoid the generic "you are not allowed to change" message,
and instead allow check_canedit to propigate out useful error messages.
Went back to calling check_canedit in fatal mode, but added a parameter to
avoid calling the troublesome subs that might cause a login attempt.
Diffstat (limited to 'IkiWiki')
-rw-r--r-- | IkiWiki/Receive.pm | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/IkiWiki/Receive.pm b/IkiWiki/Receive.pm index cd746c95f..3a5f91758 100644 --- a/IkiWiki/Receive.pm +++ b/IkiWiki/Receive.pm @@ -95,12 +95,12 @@ sub test () { if ($change->{action} eq 'change' || $change->{action} eq 'add') { if (defined $page) { - next if IkiWiki::check_canedit($page, $cgi, $session, 1); + IkiWiki::check_canedit($page, $cgi, $session, 0, 1); } else { if (IkiWiki::Plugin::attachment->can("check_canattach")) { IkiWiki::Plugin::attachment::check_canattach($session, $file, $change->{path}); - next if IkiWiki::check_canedit($file, $cgi, $session, 1); + IkiWiki::check_canedit($file, $cgi, $session, 0, 1); } } } @@ -116,14 +116,12 @@ sub test () { if (IkiWiki::Plugin::remove->can("check_canremove")) { IkiWiki::Plugin::remove::check_canremove(defined $page ? $page : $file, $cgi, $session); - next if IkiWiki::check_canedit(defined $page ? $page : $file, $cgi, $session, 1); + IkiWiki::check_canedit(defined $page ? $page : $file, $cgi, $session, 0, 1); } } else { error "unknown action ".$change->{action}; } - - error sprintf(gettext("you are not allowed to change %s"), $file); } exit 0; |