diff options
author | Jonathan Prykop <jonathan@freeside.biz> | 2016-04-19 12:16:15 -0500 |
---|---|---|
committer | Jonathan Prykop <jonathan@freeside.biz> | 2016-04-22 12:10:36 -0500 |
commit | 89e3f368f19ae733b2f82531d73bba2d7bf9e25a (patch) | |
tree | dde444414b6c598e1115b5b6acd570f497342e67 /FS | |
parent | 5c321cb0e6488b0b76fec03395ec815703867b22 (diff) |
RT#29296: API stuff: Add new locations [API bug fixes]
Diffstat (limited to 'FS')
-rw-r--r-- | FS/FS/API.pm | 11 | ||||
-rw-r--r-- | FS/FS/cust_pkg/API.pm | 2 |
2 files changed, 5 insertions, 8 deletions
diff --git a/FS/FS/API.pm b/FS/FS/API.pm index 77ae03b10..1c4cbd9af 100644 --- a/FS/FS/API.pm +++ b/FS/FS/API.pm @@ -589,7 +589,7 @@ containing the new values. =cut sub change_package_location { - my $self = shift; + my $class = shift; my %opt = @_; return _shared_secret_error() unless _check_shared_secret($opt{'secret'}); @@ -597,13 +597,10 @@ sub change_package_location { or return { 'error' => 'Unknown pkgnum' }; my %changeopt; - $changeopt{'pkgnum'} = $pkgnum; - my $cust_location = FS::cust_location->new({ - 'custnum' => $cust_pkg->custnum, - %location_hash, - }); - $changeopt{'cust_location'} = $cust_location; + foreach my $field ('locationnum',FS::cust_location::API::API_editable_fields()) { + $changeopt{$field} = $opt{$field} if $opt{$field}; + } $cust_pkg->API_change(%changeopt); } diff --git a/FS/FS/cust_pkg/API.pm b/FS/FS/cust_pkg/API.pm index 6e03b8e75..7ef3f7246 100644 --- a/FS/FS/cust_pkg/API.pm +++ b/FS/FS/cust_pkg/API.pm @@ -19,7 +19,7 @@ sub API_change { my %opt = @_; return { 'error' => 'Cannot change canceled package' } - if $self->cancel; + if $self->get('cancel'); my %changeopt; |