[freeside-commits] branch master updated. 9c533839580e7914f6e64170ffe7aa76fc945275

Ivan ivan at 420.am
Fri Nov 8 14:56:10 PST 2013


The branch, master has been updated
       via  9c533839580e7914f6e64170ffe7aa76fc945275 (commit)
      from  311b0ceeab5af6570b5e9980b54848b24c973cad (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 9c533839580e7914f6e64170ffe7aa76fc945275
Author: Ivan Kohler <ivan at freeside.biz>
Date:   Fri Nov 8 14:56:07 2013 -0800

    fix error return changing password over passwordmax in self-service, RT#24727

diff --git a/FS/FS/ClientAPI/MyAccount.pm b/FS/FS/ClientAPI/MyAccount.pm
index db50d42..2aeecc1 100644
--- a/FS/FS/ClientAPI/MyAccount.pm
+++ b/FS/FS/ClientAPI/MyAccount.pm
@@ -2801,13 +2801,16 @@ sub myaccount_passwd {
   } )
     or return { 'error' => "Service not found" };
 
-  if ( exists($p->{'old_password'}) ) {
-    return { 'error' => "Incorrect password." }
-      unless $svc_acct->check_password($p->{'old_password'});
-  }
+  my $error = '';
+
+  my $conf = new FS::Conf;
+  $error = 'Password too short.'
+    if length($p->{'new_password'}) < ($conf->config('passwordmin') || 6);
+  $error = 'Password too long.'
+    if length($p->{'new_password'}) > ($conf->config('passwordmax') || 8);
 
   $svc_acct->set_password($p->{'new_password'});
-  my $error = $svc_acct->replace();
+  $error ||= $svc_acct->replace();
 
   my($label, $value) = $svc_acct->cust_svc->label;
 

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

Summary of changes:
 FS/FS/ClientAPI/MyAccount.pm |   13 ++++++++-----
 1 files changed, 8 insertions(+), 5 deletions(-)




More information about the freeside-commits mailing list