X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/c487b847e2053b13c4eea0ccfeecf5a41c396412..d8943d8668d2489b78d9c7c2abdad9f71d193724:/IkiWiki/Plugin/signinedit.pm?ds=sidebyside

diff --git a/IkiWiki/Plugin/signinedit.pm b/IkiWiki/Plugin/signinedit.pm
index d5729f702..31160c02f 100644
--- a/IkiWiki/Plugin/signinedit.pm
+++ b/IkiWiki/Plugin/signinedit.pm
@@ -3,14 +3,24 @@ package IkiWiki::Plugin::signinedit;
 
 use warnings;
 use strict;
-use IkiWiki 2.00;
+use IkiWiki 3.00;
 
-sub import { #{{{
+sub import {
+	hook(type => "getsetup", id => "signinedit", call => \&getsetup);
 	hook(type => "canedit", id => "signinedit", call => \&canedit,
 	     last => 1);
-} # }}}
+}
 
-sub canedit ($$$) { #{{{
+sub getsetup () {
+	return
+		plugin => {
+			safe => 1,
+			rebuild => 0,
+			section => "auth",
+		},
+}
+
+sub canedit ($$$) {
 	my $page=shift;
 	my $cgi=shift;
 	my $session=shift;
@@ -19,12 +29,13 @@ sub canedit ($$$) { #{{{
 	# hook runs last, so that any hooks that don't need the user to
 	# signin can override this.
         if (! defined $session->param("name") ||
-            ! userinfo_get($session->param("name"), "regdate")) {
+            ! IkiWiki::userinfo_get($session->param("name"), "regdate")) {
+	        return "" unless exists $IkiWiki::hooks{auth};
 		return sub { IkiWiki::needsignin($cgi, $session) };
 	}
 	else {
 		return "";
 	}
-} #}}}
+}
 
 1