* Improve login/register process, the login dialog has only name and
password fields, which allows more web browsers to regognise it as a login field, and is less confusing.master
parent
285b9d8b99
commit
c3a530ab93
|
@ -116,7 +116,7 @@ sub cgi_signin ($$) { #{{{
|
||||||
eval q{use CGI::FormBuilder};
|
eval q{use CGI::FormBuilder};
|
||||||
my $form = CGI::FormBuilder->new(
|
my $form = CGI::FormBuilder->new(
|
||||||
title => "signin",
|
title => "signin",
|
||||||
fields => [qw(do title page subpage from name password confirm_password email)],
|
fields => [qw(do title page subpage from name password)],
|
||||||
header => 1,
|
header => 1,
|
||||||
charset => "utf-8",
|
charset => "utf-8",
|
||||||
method => 'POST',
|
method => 'POST',
|
||||||
|
@ -145,8 +145,14 @@ sub cgi_signin ($$) { #{{{
|
||||||
$form->field(name => "from", type => "hidden");
|
$form->field(name => "from", type => "hidden");
|
||||||
$form->field(name => "subpage", type => "hidden");
|
$form->field(name => "subpage", type => "hidden");
|
||||||
$form->field(name => "password", type => "password", required => 0);
|
$form->field(name => "password", type => "password", required => 0);
|
||||||
$form->field(name => "confirm_password", type => "password", required => 0);
|
if ($form->submitted eq "Register" || $form->submitted eq "Create Account") {
|
||||||
$form->field(name => "email", required => 0);
|
$form->title("register");
|
||||||
|
$form->text("");
|
||||||
|
$form->field(name => "name", comment => "use FirstnameLastName");
|
||||||
|
$form->fields(qw(do title page subpage from name password confirm_password email));
|
||||||
|
$form->field(name => "confirm_password", type => "password");
|
||||||
|
$form->field(name => "email", type => "text");
|
||||||
|
}
|
||||||
if ($q->param("do") ne "signin" && !$form->submitted) {
|
if ($q->param("do") ne "signin" && !$form->submitted) {
|
||||||
$form->text("You need to log in first.");
|
$form->text("You need to log in first.");
|
||||||
}
|
}
|
||||||
|
@ -155,7 +161,8 @@ sub cgi_signin ($$) { #{{{
|
||||||
# Set required fields based on how form was submitted.
|
# Set required fields based on how form was submitted.
|
||||||
my %required=(
|
my %required=(
|
||||||
"Login" => [qw(name password)],
|
"Login" => [qw(name password)],
|
||||||
"Register" => [qw(name password confirm_password email)],
|
"Register" => [],
|
||||||
|
"Create Account" => [qw(name password confirm_password email)],
|
||||||
"Mail Password" => [qw(name)],
|
"Mail Password" => [qw(name)],
|
||||||
);
|
);
|
||||||
foreach my $opt (@{$required{$form->submitted}}) {
|
foreach my $opt (@{$required{$form->submitted}}) {
|
||||||
|
@ -179,7 +186,7 @@ sub cgi_signin ($$) { #{{{
|
||||||
}
|
}
|
||||||
# And make sure the entered name exists when logging
|
# And make sure the entered name exists when logging
|
||||||
# in or sending email, and does not when registering.
|
# in or sending email, and does not when registering.
|
||||||
if ($form->submitted eq 'Register') {
|
if ($form->submitted eq 'Create Account') {
|
||||||
$form->field(
|
$form->field(
|
||||||
name => "name",
|
name => "name",
|
||||||
validate => sub {
|
validate => sub {
|
||||||
|
@ -204,8 +211,6 @@ sub cgi_signin ($$) { #{{{
|
||||||
else {
|
else {
|
||||||
# First time settings.
|
# First time settings.
|
||||||
$form->field(name => "name", comment => "use FirstnameLastName");
|
$form->field(name => "name", comment => "use FirstnameLastName");
|
||||||
$form->field(name => "confirm_password", comment => "(only needed");
|
|
||||||
$form->field(name => "email", comment => "for registration)");
|
|
||||||
if ($session->param("name")) {
|
if ($session->param("name")) {
|
||||||
$form->field(name => "name", value => $session->param("name"));
|
$form->field(name => "name", value => $session->param("name"));
|
||||||
}
|
}
|
||||||
|
@ -228,7 +233,7 @@ sub cgi_signin ($$) { #{{{
|
||||||
redirect($q, $config{url});
|
redirect($q, $config{url});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
elsif ($form->submitted eq 'Register') {
|
elsif ($form->submitted eq 'Create Account') {
|
||||||
my $user_name=$form->field('name');
|
my $user_name=$form->field('name');
|
||||||
if (userinfo_setall($user_name, {
|
if (userinfo_setall($user_name, {
|
||||||
'email' => $form->field('email'),
|
'email' => $form->field('email'),
|
||||||
|
@ -237,12 +242,12 @@ sub cgi_signin ($$) { #{{{
|
||||||
})) {
|
})) {
|
||||||
$form->field(name => "confirm_password", type => "hidden");
|
$form->field(name => "confirm_password", type => "hidden");
|
||||||
$form->field(name => "email", type => "hidden");
|
$form->field(name => "email", type => "hidden");
|
||||||
$form->text("Registration successful. Now you can Login.");
|
$form->text("Account creation successful. Now you can Login.");
|
||||||
printheader($session);
|
printheader($session);
|
||||||
print misctemplate($form->title, $form->render(submit => ["Login"]));
|
print misctemplate($form->title, $form->render(submit => ["Login"]));
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
error("Error saving registration.");
|
error("Error creating account.");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
elsif ($form->submitted eq 'Mail Password') {
|
elsif ($form->submitted eq 'Mail Password') {
|
||||||
|
@ -267,8 +272,16 @@ sub cgi_signin ($$) { #{{{
|
||||||
$form->text("Your password has been emailed to you.");
|
$form->text("Your password has been emailed to you.");
|
||||||
$form->field(name => "name", required => 0);
|
$form->field(name => "name", required => 0);
|
||||||
printheader($session);
|
printheader($session);
|
||||||
print misctemplate($form->title, $form->render(submit => ["Login", "Register", "Mail Password"]));
|
print misctemplate($form->title, $form->render(submit => ["Login", "Mail Password"]));
|
||||||
}
|
}
|
||||||
|
elsif ($form->submitted eq "Register") {
|
||||||
|
printheader($session);
|
||||||
|
print misctemplate($form->title, $form->render(submit => ["Create Account"]));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
elsif ($form->submitted eq "Create Account") {
|
||||||
|
printheader($session);
|
||||||
|
print misctemplate($form->title, $form->render(submit => ["Create Account"]));
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
printheader($session);
|
printheader($session);
|
||||||
|
|
|
@ -20,8 +20,11 @@ ikiwiki (1.32) UNRELEASED; urgency=low
|
||||||
them together.
|
them together.
|
||||||
* Install the source of the examples into /usr/share/doc/ikiwiki/examples.
|
* Install the source of the examples into /usr/share/doc/ikiwiki/examples.
|
||||||
* Add perlmagick to build-depends so syntax check of img plugin works.
|
* Add perlmagick to build-depends so syntax check of img plugin works.
|
||||||
|
* Improve login/register process, the login dialog has only name and
|
||||||
|
password fields, which allows more web browsers to regognise it as a login
|
||||||
|
field, and is less confusing.
|
||||||
|
|
||||||
-- Joey Hess <joeyh@debian.org> Mon, 30 Oct 2006 14:30:54 -0500
|
-- Joey Hess <joeyh@debian.org> Mon, 30 Oct 2006 18:26:55 -0500
|
||||||
|
|
||||||
ikiwiki (1.31) unstable; urgency=low
|
ikiwiki (1.31) unstable; urgency=low
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue