X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Fmisc%2Fpayment.cgi;h=4fa3df773b4d9e72d22f095aa851d332d3c1860a;hb=ba7725a58fa6c211df8614f57973f49d71d64b80;hp=5b9f63dc0950f3ac2e24aa8d41194c2aa324fa05;hpb=2b10c0594ff2ab9ce37d9f8af9c154d3bedde731;p=freeside.git
diff --git a/httemplate/misc/payment.cgi b/httemplate/misc/payment.cgi
index 5b9f63dc0..4fa3df773 100644
--- a/httemplate/misc/payment.cgi
+++ b/httemplate/misc/payment.cgi
@@ -17,13 +17,19 @@
'process-display' => scalar($conf->config('manual_process-display')),
'process-skip_first' => $conf->exists('manual_process-skip_first'),
'num_payments' => scalar($cust_main->cust_pay),
- 'surcharge_percentage' => scalar($conf->config('credit-card-surcharge-percentage')),
+ 'surcharge_percentage' =>
+ ( $payby eq 'CARD'
+ ? scalar($conf->config('credit-card-surcharge-percentage', $cust_main->agentnum))
+ : 0
+ ),
&>
- <& /elements/tr-select-discount_term.html,
- 'custnum' => $custnum,
- 'amount_id' => 'amount',
- &>
+% if ( $conf->exists('part_pkg-term_discounts') ) {
+ <& /elements/tr-select-discount_term.html,
+ 'custnum' => $custnum,
+ 'amount_id' => 'amount',
+ &>
+% }
% if ( $payby eq 'CARD' ) {
%
@@ -34,6 +40,8 @@
% $paycvv = $cust_main->paycvv;
% ( $month, $year ) = $cust_main->paydate_monthyear;
% $payname = $cust_main->payname if $cust_main->payname;
+% } elsif ($disable_payauto_default) {
+% $auto = 0;
% }
@@ -42,7 +50,7 @@
- |
+ >
<% mt('Exp.') |h %> |
|
+% 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;
@@ -210,7 +222,7 @@
-
+
<% mt('Add to current batch') |h %>
|
@@ -220,11 +232,52 @@
- payby ne 'DCRD' ) || ( $payby eq 'CHEK' && $cust_main->payby eq 'CHEK' ) ) ? ' CHECKED' : '' %> NAME="auto" VALUE="1" onClick="if (this.checked) { document.OneTrueForm.save.checked=true; }">
+ NAME="auto" VALUE="1" onClick="if (this.checked) { document.OneTrueForm.save.checked=true; }">
<% mt("Charge future payments to this [_1] automatically",$type{$payby}) |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
+
+
+% }
+
+% if ($auto && $disable_payauto_default) {
+
+% }
+
@@ -262,6 +315,10 @@ my $payinfo = '';
my $conf = new FS::Conf;
+my $auto = ( ( $payby eq 'CARD' && $cust_main->payby ne 'DCRD' ) || ( $payby eq 'CHEK' && $cust_main->payby eq 'CHEK' ) ) ? 1 : 0;
+my $disable_payauto_default = $conf->exists('disable_payauto_default');
+my $possibly_uncheck_auto = ' ONCHANGE="possibly_uncheck_auto()"';
+
#false laziness w/selfservice make_payment.html shortcut for one-country
my %states = map { $_->state => 1 }
qsearch('cust_main_county', {
@@ -271,7 +328,11 @@ my @states = sort { $a cmp $b } keys %states;
my $amount = '';
if ( $balance > 0 ) {
- $amount = $balance;
+ # when configured to do so, amount will only auto-fill with balance
+ # if balance represents a single invoice
+ $amount = $balance
+ unless $conf->exists('manual_process-single_invoice_amount')
+ && ($cust_main->open_cust_bill != 1);
}
my $payunique = "webui-payment-". time. "-$$-". rand() * 2**32;