my $cgi=$params{cgi};
if ($form->title eq "signin" || $form->title eq "register") {
- my %fieldset = ();
- if ($form->title eq "signin") {
- $fieldset{"fieldset"} = gettext("Log in with")." ".htmllink("", "", "passwordauth", noimageinline => 1);
- }
- $form->field(name => "name", required => 0, size => 50, %fieldset);
- $form->field(name => "password", type => "password", required => 0, %fieldset);
+ $form->field(name => "name", required => 0);
+ $form->field(name => "password", type => "password", required => 0);
if ($form->submitted eq "Register" || $form->submitted eq "Create Account") {
$form->field(name => "confirm_password", type => "password");
+ $form->field(name => "account_creation_password", type => "password") if (length $config{account_creation_password});
$form->field(name => "email", size => 50);
$form->title("register");
$form->text("");
+
+ $form->field(name => "confirm_password",
+ validate => sub {
+ shift eq $form->field("password");
+ },
+ );
+ $form->field(name => "password",
+ validate => sub {
+ shift eq $form->field("confirm_password");
+ },
+ );
}
if ($form->submitted) {
if ($submittype eq "Create Account") {
$form->field(
- name => "confirm_password",
+ name => "account_creation_password",
validate => sub {
- shift eq $form->field("password");
+ shift eq $config{account_creation_password};
},
- );
+ required => 1,
+ ) if (length $config{account_creation_password});
$form->field(
name => "email",
validate => "EMAIL",
}
else {
# First time settings.
- $form->field(name => "name", size => 30);
+ $form->field(name => "name");
if ($session->param("name")) {
$form->field(name => "name", value => $session->param("name"));
}
value => $session->param("name"), force => 1,
fieldset => "login");
$form->field(name => "password", type => "password",
- fieldset => "login");
+ fieldset => "login",
+ validate => sub {
+ shift eq $form->field("confirm_password");
+ }),
$form->field(name => "confirm_password", type => "password",
fieldset => "login",
validate => sub {
shift eq $form->field("password");
- });
-
+ }),
}
}
}
}
}
-
- IkiWiki::printheader($session);
- print IkiWiki::misctemplate($form->title, $form->render(submit => $buttons));
} #}}}
1