From: Jonathan Prykop Date: Tue, 19 Apr 2016 17:16:15 +0000 (-0500) Subject: RT#29296: API stuff: Add new locations [API bug fixes] X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=commitdiff_plain;h=e498e76c74a2e65e1c0b6a5514130ff71cee8a5b RT#29296: API stuff: Add new locations [API bug fixes] --- 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;