projects
/
freeside.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
RT# 77792 - fixed RBC format to display company name with business checking or saving...
[freeside.git]
/
FS
/
FS
/
bill_batch.pm
diff --git
a/FS/FS/bill_batch.pm
b/FS/FS/bill_batch.pm
index
ec5c194
..
fcafc4d
100644
(file)
--- a/
FS/FS/bill_batch.pm
+++ b/
FS/FS/bill_batch.pm
@@
-65,6
+65,9
@@
sub print_pdf {
qsearch('cust_bill_batch', { batchnum => $self->batchnum });
return "No invoices in batch ".$self->batchnum.'.' if !@invoices;
qsearch('cust_bill_batch', { batchnum => $self->batchnum });
return "No invoices in batch ".$self->batchnum.'.' if !@invoices;
+ my $conf = FS::Conf->new;
+ my $duplex = $conf->exists('invoice_print_pdf-duplex');
+
my $pdf_out;
my $num = 0;
foreach my $invoice (@invoices) {
my $pdf_out;
my $num = 0;
foreach my $invoice (@invoices) {
@@
-77,6
+80,13
@@
sub print_pdf {
else {
$pdf_out = CAM::PDF->new($part);
}
else {
$pdf_out = CAM::PDF->new($part);
}
+ if ( $duplex ) {
+ my $n = $pdf_out->numPages;
+ if ( $n % 2 == 1 ) {
+ # then insert a blank page so we end on an even number
+ $pdf_out->duplicatePage($n, 1);
+ }
+ }
if($job) {
# update progressbar
$num++;
if($job) {
# update progressbar
$num++;
@@
-84,6
+94,7
@@
sub print_pdf {
die $error if $error;
}
}
die $error if $error;
}
}
+ $job->update_statustext(100, 'Combining invoices') if $job;
return $pdf_out->toPDF;
}
return $pdf_out->toPDF;
}
@@
-144,6
+155,11
@@
sub process_print_pdf {
my $batch = FS::bill_batch->by_key($param->{batchnum});
die "batch '$param->{batchnum}' not found!\n" if !$batch;
my $batch = FS::bill_batch->by_key($param->{batchnum});
die "batch '$param->{batchnum}' not found!\n" if !$batch;
+ if ( $param->{'close'} ) {
+ my $error = $batch->close;
+ die $error if $error;
+ }
+
my $pdf = $batch->print_pdf($job);
$batch->pdf($pdf);
my $error = $batch->replace;
my $pdf = $batch->print_pdf($job);
$batch->pdf($pdf);
my $error = $batch->replace;