X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/cd029da49314981dad3ee89cc10946075825fb21..98e4600fe1ef5c9dfe905d5d8e017b6b8dd9814a:/IkiWiki/Plugin/passwordauth.pm

diff --git a/IkiWiki/Plugin/passwordauth.pm b/IkiWiki/Plugin/passwordauth.pm
index 7319614f7..8cf5af51e 100644
--- a/IkiWiki/Plugin/passwordauth.pm
+++ b/IkiWiki/Plugin/passwordauth.pm
@@ -4,35 +4,40 @@ package IkiWiki::Plugin::passwordauth;
 
 use warnings;
 use strict;
-use IkiWiki 2.00;
+use IkiWiki 3.00;
 
-sub import { #{{{
+sub import {
 	hook(type => "getsetup", id => "passwordauth", "call" => \&getsetup);
-        hook(type => "formbuilder_setup", id => "passwordauth", call => \&formbuilder_setup);
-        hook(type => "formbuilder", id => "passwordauth", call => \&formbuilder);
+	hook(type => "formbuilder_setup", id => "passwordauth", call => \&formbuilder_setup);
+	hook(type => "formbuilder", id => "passwordauth", call => \&formbuilder);
 	hook(type => "sessioncgi", id => "passwordauth", call => \&sessioncgi);
-} # }}}
+	hook(type => "auth", id => "passwordauth", call => \&auth);
+}
 
-sub getsetup () { #{{{
+sub getsetup () {
 	return
+		plugin => {
+			safe => 1,
+			rebuild => 0,
+		},
 		account_creation_password => {
 			type => "string",
-			default => "",
+			example => "s3cr1t",
 			description => "a password that must be entered when signing up for an account",
 			safe => 1,
 			rebuild => 0,
 		},
 		password_cost => {
 			type => "integer",
-			default => 8,
+			example => 8,
 			description => "cost of generating a password using Authen::Passphrase::BlowfishCrypt",
 			safe => 1,
 			rebuild => 0,
 		},
-} #}}}
+}
 
 # Checks if a string matches a user's password, and returns true or false.
-sub checkpassword ($$;$) { #{{{
+sub checkpassword ($$;$) {
 	my $user=shift;
 	my $password=shift;
 	my $field=shift || "password";
@@ -70,9 +75,9 @@ sub checkpassword ($$;$) { #{{{
 	}
 
 	return $ret;
-} #}}}
+}
 
-sub setpassword ($$;$) { #{{{
+sub setpassword ($$;$) {
 	my $user=shift;
 	my $password=shift;
 	my $field=shift || "password";
@@ -90,9 +95,9 @@ sub setpassword ($$;$) { #{{{
 	else {
 		IkiWiki::userinfo_set($user, $field, $password);
 	}
-} #}}}
+}
 
-sub formbuilder_setup (@) { #{{{
+sub formbuilder_setup (@) {
 	my %params=@_;
 
 	my $form=$params{form};
@@ -218,7 +223,7 @@ sub formbuilder_setup (@) { #{{{
 	}
 }
 
-sub formbuilder (@) { #{{{
+sub formbuilder (@) {
 	my %params=@_;
 
 	my $form=$params{form};
@@ -309,9 +314,9 @@ sub formbuilder (@) { #{{{
 			}
 		}
 	}
-} #}}}
+}
 
-sub sessioncgi ($$) { #{{{
+sub sessioncgi ($$) {
 	my $q=shift;
 	my $session=shift;
 
@@ -331,6 +336,12 @@ sub sessioncgi ($$) { #{{{
 		IkiWiki::cgi_prefs($q, $session);
 		exit;
 	}
-} #}}}
+}
+
+sub auth ($$) {
+	# While this hook is not currently used, it needs to exist
+	# so ikiwiki knows that the wiki supports logins, and will
+	# enable the Preferences page.
+}
 
 1