Commit 1d971ce0 authored by terry%mozilla.org's avatar terry%mozilla.org

Patch by Chris Baldwin <chris.baldwin@siara.com> -- allow optional

entry of the user's realname. Note that nothing actually makes use of this info at present.
parent 63dd4a06
...@@ -385,7 +385,7 @@ sub confirm_login { ...@@ -385,7 +385,7 @@ sub confirm_login {
if (defined $::FORM{"PleaseMailAPassword"}) { if (defined $::FORM{"PleaseMailAPassword"}) {
my $realpwd; my $realpwd;
if ($realcryptpwd eq "") { if ($realcryptpwd eq "") {
$realpwd = InsertNewUser($enteredlogin); $realpwd = InsertNewUser($enteredlogin, "");
} else { } else {
SendSQL("select password from profiles where login_name = " . SendSQL("select password from profiles where login_name = " .
SqlQuote($enteredlogin)); SqlQuote($enteredlogin));
......
...@@ -33,9 +33,11 @@ if (! defined $::FORM{'pwd1'}) { ...@@ -33,9 +33,11 @@ if (! defined $::FORM{'pwd1'}) {
if (Param('useqacontact')) { if (Param('useqacontact')) {
$qacontactpart = ", the current QA Contact"; $qacontactpart = ", the current QA Contact";
} }
SendSQL("select emailnotification from profiles where login_name = " . my $loginname = SqlQuote($::COOKIE{'Bugzilla_login'});
SqlQuote($::COOKIE{'Bugzilla_login'})); SendSQL("select emailnotification,realname from profiles where login_name = " .
my ($emailnotification) = (FetchSQLData()); $loginname);
my ($emailnotification, $realname) = (FetchSQLData());
$realname = value_quote($realname);
print qq{ print qq{
<form method=post> <form method=post>
<hr> <hr>
...@@ -47,6 +49,11 @@ if (! defined $::FORM{'pwd1'}) { ...@@ -47,6 +49,11 @@ if (! defined $::FORM{'pwd1'}) {
<tr> <tr>
<td align=right>Re-enter your new password:</td> <td align=right>Re-enter your new password:</td>
<td><input type=password name="pwd2"></td> <td><input type=password name="pwd2"></td>
</tr>
<tr>
<td align=right>Your real name (optional):</td>
<td><input size=35 name=realname value="$realname"></td>
</tr>
</table> </table>
<hr> <hr>
<table> <table>
...@@ -122,6 +129,13 @@ Please click <b>Back</b> and try again.\n"; ...@@ -122,6 +129,13 @@ Please click <b>Back</b> and try again.\n";
SendSQL("update profiles set emailnotification='$::FORM{'emailnotification'}' where login_name = " . SendSQL("update profiles set emailnotification='$::FORM{'emailnotification'}' where login_name = " .
SqlQuote($::COOKIE{'Bugzilla_login'})); SqlQuote($::COOKIE{'Bugzilla_login'}));
my $newrealname = $::FORM{'realname'};
if ($newrealname ne "") {
$newrealname = SqlQuote($newrealname);
SendSQL("update profiles set realname=$newrealname where login_name = " .
SqlQuote($::COOKIE{'Bugzilla_login'}));
}
PutHeader("Preferences updated."); PutHeader("Preferences updated.");
print " print "
......
...@@ -44,6 +44,7 @@ Content-type: text/html ...@@ -44,6 +44,7 @@ Content-type: text/html
PutHeader("Create a new bugzilla account"); PutHeader("Create a new bugzilla account");
my $login = $::FORM{'login'}; my $login = $::FORM{'login'};
my $realname = $::FORM{'realname'};
if (defined $login) { if (defined $login) {
CheckEmailSyntax($login); CheckEmailSyntax($login);
if (DBname_to_id($login) != 0) { if (DBname_to_id($login) != 0) {
...@@ -53,7 +54,7 @@ if (defined $login) { ...@@ -53,7 +54,7 @@ if (defined $login) {
print "the <b>E-mail me a password</b> button.\n"; print "the <b>E-mail me a password</b> button.\n";
exit; exit;
} }
my $password = InsertNewUser($login); my $password = InsertNewUser($login, $realname);
MailPassword($login, $password); MailPassword($login, $password);
print "A bugzilla account for <tt>$login</tt> has been created. The\n"; print "A bugzilla account for <tt>$login</tt> has been created. The\n";
print "password has been e-mailed to that address. When it is\n"; print "password has been e-mailed to that address. When it is\n";
...@@ -66,7 +67,8 @@ if (defined $login) { ...@@ -66,7 +67,8 @@ if (defined $login) {
print q{ print q{
To create a bugzilla account, all that you need to do is to enter a To create a bugzilla account, all that you need to do is to enter a
legitimate e-mail address. The account will be created, and its legitimate e-mail address. The account will be created, and its
password will be mailed to you. password will be mailed to you. Optionally you may enter your real name
as well.
<FORM method=get> <FORM method=get>
<table> <table>
...@@ -74,6 +76,10 @@ password will be mailed to you. ...@@ -74,6 +76,10 @@ password will be mailed to you.
<td align=right><b>E-mail address:</b></td> <td align=right><b>E-mail address:</b></td>
<td><input size=35 name=login></td> <td><input size=35 name=login></td>
</tr> </tr>
<tr>
<td align=right><b>Real name:</b></td>
<td><input size=35 name=realname></td>
</tr>
</table> </table>
<input type=submit> <input type=submit>
}; };
......
...@@ -353,7 +353,7 @@ sub GetVersionTable { ...@@ -353,7 +353,7 @@ sub GetVersionTable {
sub InsertNewUser { sub InsertNewUser {
my ($username) = (@_); my ($username, $realname) = (@_);
my $password = ""; my $password = "";
for (my $i=0 ; $i<8 ; $i++) { for (my $i=0 ; $i<8 ; $i++) {
$password .= substr("abcdefghijklmnopqrstuvwxyz", int(rand(26)), 1); $password .= substr("abcdefghijklmnopqrstuvwxyz", int(rand(26)), 1);
...@@ -370,7 +370,9 @@ sub InsertNewUser { ...@@ -370,7 +370,9 @@ sub InsertNewUser {
} }
} }
SendSQL("insert into profiles (login_name, password, cryptpassword, groupset) values (@{[SqlQuote($username)]}, '$password', encrypt('$password'), $groupset)"); $username = SqlQuote($username);
$realname = SqlQuote($realname);
SendSQL("insert into profiles (login_name, realname, password, cryptpassword, groupset) values ($username, $realname, '$password', encrypt('$password'), $groupset)");
return $password; return $password;
} }
...@@ -406,7 +408,7 @@ sub DBNameToIdAndCheck { ...@@ -406,7 +408,7 @@ sub DBNameToIdAndCheck {
return $result; return $result;
} }
if ($forceok) { if ($forceok) {
InsertNewUser($name); InsertNewUser($name, "");
$result = DBname_to_id($name); $result = DBname_to_id($name);
if ($result > 0) { if ($result > 0) {
return $result; return $result;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment