From: Jonathan Prykop Date: Thu, 25 Feb 2016 15:14:26 +0000 (-0600) Subject: RT#30600: Auto Apply for CC payments X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=commitdiff_plain;h=05dee44cdb4e93df6963ae396f916705c4086f86 RT#30600: Auto Apply for CC payments --- diff --git a/FS/FS/cust_main/Billing_Realtime.pm b/FS/FS/cust_main/Billing_Realtime.pm index 747f4af5d..e2a02674e 100644 --- a/FS/FS/cust_main/Billing_Realtime.pm +++ b/FS/FS/cust_main/Billing_Realtime.pm @@ -154,7 +154,9 @@ specified invoice. If the customer has exactly one open invoice, that invoice number will be assumed. If you don't specify an I you might want to call the B method or set the I option. -I can be set to true to apply a resulting payment. +I can be set to true to run B on success. + +I can be set to true to prevent resulting payment from being automatically applied. I can be set true to surpress email decline notices. @@ -903,7 +905,7 @@ sub _realtime_bop_result { 'processor' => $payment_gateway->gateway_module, 'auth' => $transaction->authorization, 'order_number' => $order_number || '', - + 'no_auto_apply' => $options{'no_auto_apply'} ? 'Y' : '', } ); #doesn't hurt to know, even though the dup check is in cust_pay_pending now $cust_pay->payunique( $options{payunique} ) diff --git a/httemplate/misc/payment.cgi b/httemplate/misc/payment.cgi index 02648a821..f30e4098e 100644 --- a/httemplate/misc/payment.cgi +++ b/httemplate/misc/payment.cgi @@ -33,6 +33,57 @@ &> % } +% my $disallow_no_auto_apply = 0; +% if ( $conf->exists("batch-enable") +% || grep $payby eq $_, $conf->config('batch-enable_payby') +% ) { +% +% if ( grep $payby eq $_, $conf->config('realtime-disable_payby') ) { +% $disallow_no_auto_apply = 1; + + + +% } else { + + +    <% mt('Add to current batch') |h %> + + + + + +% } +% } + +% unless ($disallow_no_auto_apply) { +% # false laziness with edit/cust_pay.cgi + + + <% mt('Auto-apply to invoices') |h %> + + + + + +% # this can go away if no_auto_apply handling gets added to batch payment processing + + +% } +