diff options
-rw-r--r-- | Bugzilla/Token.pm | 43 | ||||
-rw-r--r-- | Token.pm | 43 | ||||
-rw-r--r-- | template/en/default/account/password/forgotten-password.txt.tmpl | 34 |
3 files changed, 62 insertions, 58 deletions
diff --git a/Bugzilla/Token.pm b/Bugzilla/Token.pm index 1400face9..07e5de698 100644 --- a/Bugzilla/Token.pm +++ b/Bugzilla/Token.pm @@ -114,7 +114,20 @@ sub IssuePasswordToken { &::SendSQL("UNLOCK TABLES"); # Mail the user the token along with instructions for using it. - MailPasswordToken($loginname, $token); + + my $template = $::template; + my $vars = $::vars; + + $vars->{'token'} = $token; + $vars->{'emailaddress'} = $loginname . &::Param('emailsuffix'); + + my $message = ""; + $template->process("account/email/password.txt.tmpl", $vars, \$message) + || &::ThrowTemplateError($template->error()); + + open SENDMAIL, "|/usr/lib/sendmail -t -i"; + print SENDMAIL $message; + close SENDMAIL; } @@ -153,34 +166,6 @@ sub GenerateUniqueToken { } -sub MailPasswordToken { - # Emails a password token to a user along with instructions for its use. - # Called exclusively from &IssuePasswordToken. - - my ($emailaddress, $token) = @_; - - my $urlbase = &::Param("urlbase"); - my $emailsuffix = &::Param('emailsuffix'); - $token = &::url_quote($token); - - open SENDMAIL, "|/usr/lib/sendmail -t -i"; - - print SENDMAIL qq|From: bugzilla-daemon -To: $emailaddress$emailsuffix -Subject: Bugzilla Change Password Request - -You or someone impersonating you has requested to change your Bugzilla -password. To change your password, visit the following link: - -${urlbase}token.cgi?a=cfmpw&t=$token - -If you are not the person who made this request, or you wish to cancel -this request, visit the following link: - -${urlbase}token.cgi?a=cxlpw&t=$token -|; - close SENDMAIL; -} sub Cancel { # Cancels a previously issued token and notifies the system administrator. @@ -114,7 +114,20 @@ sub IssuePasswordToken { &::SendSQL("UNLOCK TABLES"); # Mail the user the token along with instructions for using it. - MailPasswordToken($loginname, $token); + + my $template = $::template; + my $vars = $::vars; + + $vars->{'token'} = $token; + $vars->{'emailaddress'} = $loginname . &::Param('emailsuffix'); + + my $message = ""; + $template->process("account/email/password.txt.tmpl", $vars, \$message) + || &::ThrowTemplateError($template->error()); + + open SENDMAIL, "|/usr/lib/sendmail -t -i"; + print SENDMAIL $message; + close SENDMAIL; } @@ -153,34 +166,6 @@ sub GenerateUniqueToken { } -sub MailPasswordToken { - # Emails a password token to a user along with instructions for its use. - # Called exclusively from &IssuePasswordToken. - - my ($emailaddress, $token) = @_; - - my $urlbase = &::Param("urlbase"); - my $emailsuffix = &::Param('emailsuffix'); - $token = &::url_quote($token); - - open SENDMAIL, "|/usr/lib/sendmail -t -i"; - - print SENDMAIL qq|From: bugzilla-daemon -To: $emailaddress$emailsuffix -Subject: Bugzilla Change Password Request - -You or someone impersonating you has requested to change your Bugzilla -password. To change your password, visit the following link: - -${urlbase}token.cgi?a=cfmpw&t=$token - -If you are not the person who made this request, or you wish to cancel -this request, visit the following link: - -${urlbase}token.cgi?a=cxlpw&t=$token -|; - close SENDMAIL; -} sub Cancel { # Cancels a previously issued token and notifies the system administrator. diff --git a/template/en/default/account/password/forgotten-password.txt.tmpl b/template/en/default/account/password/forgotten-password.txt.tmpl new file mode 100644 index 000000000..155b83b08 --- /dev/null +++ b/template/en/default/account/password/forgotten-password.txt.tmpl @@ -0,0 +1,34 @@ +[%# 1.0@bugzilla.org %] +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Netscape Communications + # Corporation. Portions created by Netscape are + # Copyright (C) 1998 Netscape Communications Corporation. All + # Rights Reserved. + # + # Contributor(s): John Vandenberg <zeroj@null.net> + #%] +From: bugzilla-admin-daemon +To: [% emailaddress %] +Subject: Bugzilla Change Password Request + +You (or someone impersonating you) has requested to change your Bugzilla +password. To change your password, visit the following link: + +[%+ Param('urlbase') %]token.cgi?a=cfmpw&t=[% token FILTER url_quote %] + +If you are not the person who made this request, or you wish to cancel +this request, visit the following link: + +[%+ Param('urlbase') %]token.cgi?a=cxlpw&t=[% token FILTER url_quote %] + |