summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIvan Kohler <ivan@freeside.biz>2016-04-05 17:54:06 -0700
committerIvan Kohler <ivan@freeside.biz>2016-04-05 17:54:06 -0700
commit326a2afa1d56f7931cb577e892a1332ed7f3312d (patch)
tree7f02b7f3121fb5c9fd8c86c2ecf60aab4ecf4f3b
parent46caacbb04d14692712e883553315dcfdeb8bb32 (diff)
add date to cancel_pkg self-service API, RT#41645
-rw-r--r--FS/FS/ClientAPI/MyAccount.pm7
-rw-r--r--fs_selfservice/FS-SelfService/SelfService.pm9
2 files changed, 10 insertions, 6 deletions
diff --git a/FS/FS/ClientAPI/MyAccount.pm b/FS/FS/ClientAPI/MyAccount.pm
index 336482123..ddd4367b7 100644
--- a/FS/FS/ClientAPI/MyAccount.pm
+++ b/FS/FS/ClientAPI/MyAccount.pm
@@ -2606,19 +2606,18 @@ sub cancel_pkg {
or return { 'error' => "Can't resume session" }; #better error message
my $custnum = $session->{'custnum'};
-
my $cust_main = qsearchs('cust_main', { 'custnum' => $custnum } )
or return { 'error' => "unknown custnum $custnum" };
my $pkgnum = $p->{'pkgnum'};
-
my $cust_pkg = qsearchs('cust_pkg', { 'custnum' => $custnum,
'pkgnum' => $pkgnum, } )
or return { 'error' => "unknown pkgnum $pkgnum" };
- my $error = $cust_pkg->cancel('quiet' => 1);
+ my $error = $cust_pkg->cancel( 'quiet' => 1,
+ 'date' => $p->{'date'},
+ );
return { 'error' => $error };
-
}
sub provision_phone {
diff --git a/fs_selfservice/FS-SelfService/SelfService.pm b/fs_selfservice/FS-SelfService/SelfService.pm
index f7d72dc58..8d9982618 100644
--- a/fs_selfservice/FS-SelfService/SelfService.pm
+++ b/fs_selfservice/FS-SelfService/SelfService.pm
@@ -1128,7 +1128,7 @@ following keys:
=item bill_date
(Future) Bill date. Indicates a future date for which billing could be run.
-Specified as a integer UNIX timestamp. Pass this value to the B<order_renew>
+Specified as an integer UNIX timestamp. Pass this value to the B<order_renew>
function.
=item bill_date_pretty
@@ -1144,7 +1144,7 @@ Base amount which will be charged if renewed early as of this date.
Renewal date; i.e. even-futher future date at which the customer will be paid
through if the early renewal is completed with the given B<bill-date>.
-Specified as a integer UNIX timestamp.
+Specified as an integer UNIX timestamp.
=item renew_date_pretty
@@ -1205,6 +1205,11 @@ Session identifier
pkgpart of package to cancel
+=item date
+
+Optional date, for future cancellation (expiration) instead of immediate
+cancellation. Specified as an integer UNIX timestamp ("epoch time").
+
=back
Returns a hash reference with a single key, B<error>, empty on success, or an