diff options
author | ivan <ivan> | 2004-03-19 13:29:01 +0000 |
---|---|---|
committer | ivan <ivan> | 2004-03-19 13:29:01 +0000 |
commit | 7f355a54c898673eb644df27e251281c27807e8c (patch) | |
tree | f999b8f31d89f1abe6f688daf4af1e70166717fe | |
parent | b176140ad0f4dd63ac4a813f96eb5ab4fea3ea68 (diff) |
sync up with 1.5 for real
-rw-r--r-- | FS/FS/ClientAPI/passwd.pm | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/FS/FS/ClientAPI/passwd.pm b/FS/FS/ClientAPI/passwd.pm index f6af3434b..cb839ecef 100644 --- a/FS/FS/ClientAPI/passwd.pm +++ b/FS/FS/ClientAPI/passwd.pm @@ -15,7 +15,8 @@ FS::ClientAPI->register_handlers( sub passwd { my $packet = shift; - my $domain = qsearchs('svc_domain', { 'domain' => $packet->{'domain'} } ) + my $domain = $FS::ClientAPI::domain || $packet->{'domain'}; + my $svc_domain = qsearchs('svc_domain', { 'domain' => $domain } ) or return { error => "Domain $domain not found" }; my $old_password = $packet->{'old_password'}; @@ -23,14 +24,14 @@ sub passwd { my $new_gecos = $packet->{'new_gecos'}; my $new_shell = $packet->{'new_shell'}; - #false laziness w/FS::ClientAPI::MyAccount::login - - my $svc_acct = qsearchs( 'svc_acct', { 'username' => $packet->{'username'}, - 'domsvc' => $svc_domain->svcnum, } - ); - return { error => 'User not found.' } unless $svc_acct; - return { error => 'Incorrect password.' } - unless $svc_acct->check_password($old_password); + #false laziness w/FS::ClientAPI::MyAccount::login + + my $svc_acct = qsearchs( 'svc_acct', { 'username' => $packet->{'username'}, + 'domsvc' => $svc_domain->svcnum, } + ); + return { error => 'User not found.' } unless $svc_acct; + return { error => 'Incorrect password.' } + unless $svc_acct->check_password($old_password); my %hash = $svc_acct->hash; my $new_svc_acct = new FS::svc_acct ( \%hash ); |