aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoey Hess <joey@gnu.kitenet.net>2010-01-04 19:40:33 -0500
committerJoey Hess <joey@gnu.kitenet.net>2010-01-04 19:40:33 -0500
commit264f46989470db93293938e327744554b5177f82 (patch)
tree0251e397f23753980b2a543d5c110200517b2c54
parent3e6331127b57fe4f3e48d3cf10536b2f2b70eefb (diff)
downloadikiwiki-264f46989470db93293938e327744554b5177f82.tar
ikiwiki-264f46989470db93293938e327744554b5177f82.tar.gz
lockedit can make sense with no auth plugins
On second though, you might want a wide-open wiki with some locked pages that cannot be edited online. So, the right thing for lockedit to do when there are no auth plugins is to just say the page cannot be edited.
-rw-r--r--IkiWiki/Plugin/lockedit.pm12
-rw-r--r--debian/changelog2
2 files changed, 3 insertions, 11 deletions
diff --git a/IkiWiki/Plugin/lockedit.pm b/IkiWiki/Plugin/lockedit.pm
index 8914ba498..74ddbb153 100644
--- a/IkiWiki/Plugin/lockedit.pm
+++ b/IkiWiki/Plugin/lockedit.pm
@@ -7,7 +7,6 @@ use IkiWiki 3.00;
sub import {
hook(type => "getsetup", id => "lockedit", call => \&getsetup);
- hook(type => "checkconfig", id => "lockedit", call => \&checkconfig);
hook(type => "canedit", id => "lockedit", call => \&canedit);
}
@@ -27,12 +26,6 @@ sub getsetup () {
},
}
-sub checkconfig () {
- if (! exists $IkiWiki::hooks{auth}) {
- error gettext("lockedit plugin is enabled, but no authentication plugins are enabled");
- }
-}
-
sub canedit ($$) {
my $page=shift;
my $cgi=shift;
@@ -46,8 +39,9 @@ sub canedit ($$) {
user => $session->param("name"),
ip => $ENV{REMOTE_ADDR},
)) {
- if (! defined $user ||
- ! IkiWiki::userinfo_get($session->param("name"), "regdate")) {
+ if ((! defined $user ||
+ ! IkiWiki::userinfo_get($session->param("name"), "regdate")) &&
+ exists $IkiWiki::hooks{auth}) {
return sub { IkiWiki::needsignin($cgi, $session) };
}
else {
diff --git a/debian/changelog b/debian/changelog
index 2c121ef54..aa4f1ac3c 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -4,8 +4,6 @@ ikiwiki (3.20100104) UNRELEASED; urgency=low
(Sjoerd)
* signinedit: Auto-disable the plugin when all authentication methods
are disabled.
- * lockedit: Detect if no authentication plugins are enabled, and
- die with an error message as this configuration does not make sense.
-- Joey Hess <joeyh@debian.org> Mon, 04 Jan 2010 12:53:24 -0500