'MyAccount/login' => \&login,
'MyAccount/customer_info' => \&customer_info,
'MyAccount/invoice' => \&invoice,
+ 'MyAccount/cancel' => \&cancel,
);
#store in db?
}
+sub cancel {
+ my $p = shift;
+ my $session = $cache->get($p->{'session_id'})
+ 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 @errors = $cust_main->cancel;
+
+ my $error = scalar(@errors) ? join(' / ', @errors) : '';
+
+ return { 'error' => $error };
+
+}
+
+1;
'login' => 'MyAccount/login',
'customer_info' => 'MyAccount/customer_info',
'invoice' => 'MyAccount/invoice',
+ 'cancel' => 'MyAccount/cancel',
);
@EXPORT_OK = keys %autoload;