From 49951829ef77417122463d6df81e330010c0afae Mon Sep 17 00:00:00 2001 From: "lpsolit%gmail.com" <> Date: Wed, 30 Mar 2005 17:57:29 +0000 Subject: Bug 276543: createaccount.cgi should not be displayed if account creation is disabled - Patch by Olav Vitters r=LpSolit a=justdave --- createaccount.cgi | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) (limited to 'createaccount.cgi') diff --git a/createaccount.cgi b/createaccount.cgi index de8dc6fde..c89de3819 100755 --- a/createaccount.cgi +++ b/createaccount.cgi @@ -38,17 +38,20 @@ use vars qw( $vars ); +# Just in case someone already has an account, let them get the correct footer +# on an error message. The user is logged out just before the account is +# actually created. +Bugzilla->login(); + # If we're using LDAP for login, then we can't create a new account here. unless (Bugzilla::Auth->can_edit('new')) { - # Just in case someone already has an account, let them get the correct - # footer on the error message - Bugzilla->login(); - ThrowUserError("auth_cant_create_account"); + ThrowUserError("auth_cant_create_account"); } -# Clear out the login cookies. Make people log in again if they create an -# account; otherwise, they'll probably get confused. -Bugzilla->logout(); +my $createexp = Param('createemailregexp'); +unless ($createexp) { + ThrowUserError("account_creation_disabled"); +} my $cgi = Bugzilla->cgi; print $cgi->header(); @@ -68,12 +71,13 @@ if (defined($login)) { exit; } - my $createexp = Param('createemailregexp'); - if (!($createexp) - || ($login !~ /$createexp/)) { + if ($login !~ /$createexp/) { ThrowUserError("account_creation_disabled"); } + # Clear out the login cookies in case the user is currently logged in. + Bugzilla->logout(); + # Create account my $password = insert_new_user($login, $realname); MailPassword($login, $password); -- cgit v1.2.3-24-g4f1b