[freeside-commits] branch master updated. 1401eef8b37ea9ffc6a44819a0778697c775dac3

Ivan ivan at 420.am
Sun Dec 28 14:19:44 PST 2014


The branch, master has been updated
       via  1401eef8b37ea9ffc6a44819a0778697c775dac3 (commit)
      from  9e41d40df2756e5cfad9483967c70cbd1fd0513c (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 1401eef8b37ea9ffc6a44819a0778697c775dac3
Author: Ivan Kohler <ivan at freeside.biz>
Date:   Sun Dec 28 14:19:42 2014 -0800

    fix contact self-service password reset link vs. outlook, RT#32657

diff --git a/FS/FS/msg_template/InitialData.pm b/FS/FS/msg_template/InitialData.pm
index a21c2d5..a4e27fd 100644
--- a/FS/FS/msg_template/InitialData.pm
+++ b/FS/FS/msg_template/InitialData.pm
@@ -10,7 +10,7 @@ sub _initial_data {
       _insert_args => [ subject => '{ $company_name } password reset',
                         body    => <<'END',
 To complete your { $company_name } password reset, please go to
-<a href="{ $selfservice_server_base_url }/selfservice.cgi?action=process_forgot_password;session_id={ $session_id }">{ $selfservice_server_base_url }/selfservice.cgi?action=process_forgot_password;session_id={ $session_id }</a><br />
+<a href="{ $selfservice_server_base_url }/selfservice.cgi?action=process_forgot_password_session_{ $session_id }">{ $selfservice_server_base_url }/selfservice.cgi?action=process_forgot_password_session_{ $session_id }</a><br />
 <br />
 This link will expire in 24 hours.<br />
 <br />
diff --git a/fs_selfservice/FS-SelfService/cgi/selfservice.cgi b/fs_selfservice/FS-SelfService/cgi/selfservice.cgi
index b008fbf..4ccf1de 100755
--- a/fs_selfservice/FS-SelfService/cgi/selfservice.cgi
+++ b/fs_selfservice/FS-SelfService/cgi/selfservice.cgi
@@ -88,12 +88,17 @@ my @nologin_actions = (qw(
   do_forgot_password
   process_forgot_password
   do_process_forgot_password
+  process_forgot_password_session
 ));
 push @actions, @nologin_actions;
 my %nologin_actions = map { $_=>1 } @nologin_actions;
 
 my $action = 'myaccount'; # sensible default
-if ( $cgi->param('action') =~ /^(\w+)$/ ) {
+
+if ( $cgi->param('action') =~ /^process_forgot_password_session_(\w+)$/ ) {
+  $action = 'process_forgot_password_session';
+  $session_id = $1;
+} elsif ( $cgi->param('action') =~ /^(\w+)$/ ) {
   if (grep {$_ eq $1} @actions) {
     $action = $1;
   } else {
@@ -1051,6 +1056,12 @@ sub process_forgot_password {
   );
 }
 
+sub process_forgot_password_session {
+  check_reset_passwd(
+    'session_id' => $session_id,
+  );
+}
+
 sub do_process_forgot_password {
   process_reset_passwd(
     map { $_ => scalar($cgi->param($_)) }

-----------------------------------------------------------------------

Summary of changes:
 FS/FS/msg_template/InitialData.pm                 |    2 +-
 fs_selfservice/FS-SelfService/cgi/selfservice.cgi |   13 ++++++++++++-
 2 files changed, 13 insertions(+), 2 deletions(-)




More information about the freeside-commits mailing list