projects
/
freeside.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'master' of git.freeside.biz:/home/git/freeside
[freeside.git]
/
httemplate
/
misc
/
process
/
batch-cust_pay.cgi
diff --git
a/httemplate/misc/process/batch-cust_pay.cgi
b/httemplate/misc/process/batch-cust_pay.cgi
index
3b06f3a
..
b4580bb
100644
(file)
--- a/
httemplate/misc/process/batch-cust_pay.cgi
+++ b/
httemplate/misc/process/batch-cust_pay.cgi
@@
-1,5
+1,5
@@
<%init>
<%init>
-my $DEBUG =
1
;
+my $DEBUG =
0
;
die "access denied"
unless $FS::CurrentUser::CurrentUser->access_right('Post payment batch');
die "access denied"
unless $FS::CurrentUser::CurrentUser->access_right('Post payment batch');
@@
-12,7
+12,8
@@
my $paybatch = time2str('webbatch-%Y/%m/%d-%T'. "-$$-". rand() * 2**32, time);
my @cust_pay = ();
#my $row = 0;
#while ( exists($param->{"custnum$row"}) ) {
my @cust_pay = ();
#my $row = 0;
#while ( exists($param->{"custnum$row"}) ) {
-for ( my $row = 0; exists($param->{"custnum$row"}); $row++ ) {
+my @invrows = grep(/^invnum\d+\.\d+$/, keys %$param);
+foreach my $row ( map /^custnum(\d+)$/, keys %$param ) {
my $custnum = $param->{"custnum$row"};
my $cust_main;
if ( $custnum =~ /^(\d+)$/ and $1 <= 2147483647 ) {
my $custnum = $param->{"custnum$row"};
my $cust_main;
if ( $custnum =~ /^(\d+)$/ and $1 <= 2147483647 ) {
@@
-37,8
+38,10
@@
for ( my $row = 0; exists($param->{"custnum$row"}); $row++ ) {
'paid' => $param->{"paid$row"},
'payby' => 'BILL',
'payinfo' => $param->{"payinfo$row"},
'paid' => $param->{"paid$row"},
'payby' => 'BILL',
'payinfo' => $param->{"payinfo$row"},
+ '_date' => $param->{"_date$row"},
'discount_term' => $param->{"discount_term$row"},
'paybatch' => $paybatch,
'discount_term' => $param->{"discount_term$row"},
'paybatch' => $paybatch,
+ 'no_auto_apply' => exists($param->{"no_auto_apply$row"}) ? 'Y' : '',
}
if $param->{"custnum$row"}
|| $param->{"paid$row"}
}
if $param->{"custnum$row"}
|| $param->{"paid$row"}
@@
-48,7
+51,8
@@
for ( my $row = 0; exists($param->{"custnum$row"}); $row++ ) {
# payment applications, if any
my @cust_bill_pay = ();
# payment applications, if any
my @cust_bill_pay = ();
- for ( my $app = 0; exists($param->{"invnum$row.$app"}); $app++ ) {
+ foreach my $app ( sort {$a <=> $b} map /^invnum$row\.(\d+)$/, @invrows ) {
+# for ( my $app = 0; exists($param->{"invnum$row.$app"}); $app++ ) {
next if !$param->{"invnum$row.$app"};
push @cust_bill_pay, new FS::cust_bill_pay {
'invnum' => $param->{"invnum$row.$app"},
next if !$param->{"invnum$row.$app"};
push @cust_bill_pay, new FS::cust_bill_pay {
'invnum' => $param->{"invnum$row.$app"},