summaryrefslogtreecommitdiff
path: root/httemplate/misc/download-batch.cgi
blob: c4bc37e93df7e1cf61c6aaefbd7fca435b4b0b9e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
<% $exporttext %><%init>

#http_header('Content-Type' => 'text/comma-separated-values' ); #IE chokes
http_header('Content-Type' => 'text/plain' ); # not necessarily correct...

my $batchnum;
if ( $cgi->param('batchnum') =~ /^(\d+)$/ ) {
  $batchnum = $1;
} else {
  die "No batch number (bad URL) \n";
}

my %opt;
if ( $cgi->param('gatewaynum') =~ /^(\d+)$/ ) {
  my $gateway = FS::payment_gateway->by_key($1);
  die "gatewaynum $1 not found" unless $gateway;
  $opt{'gateway'} = $gateway;
}
elsif ( $cgi->param('format') =~ /^([\w\- ]+)$/ ) {
  $opt{'format'} = $1;
}

my $pay_batch = qsearchs('pay_batch', { batchnum => $batchnum } );
die "Batch not found: '$batchnum'" if !$pay_batch;

my $exporttext = $pay_batch->export_batch(%opt);
unless ($exporttext) {
  http_header('Content-Type' => 'text/html' );
  $exporttext = <<EOF;
<SCRIPT>
alert('Batch was empty, and has been resolved');
window.top.location.href = '${p}search/pay_batch.cgi?magic=_date;open=1;intransit=1;resolved=1';
</SCRIPT>
EOF
}

</%init>