X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2Fbin%2Ffreeside-paymentech-download;h=16ac3c23b66c27c59b7e51bd58663aa78112f6e5;hb=cace897d9c5fbe1f80277b0cb14e85c9d2272cf1;hp=8fb4bccb860183d636e63916f575786073a9fa87;hpb=761b6b889a02b9ec593fdba70484dbf07b28d172;p=freeside.git diff --git a/FS/bin/freeside-paymentech-download b/FS/bin/freeside-paymentech-download index 8fb4bccb8..16ac3c23b 100755 --- a/FS/bin/freeside-paymentech-download +++ b/FS/bin/freeside-paymentech-download @@ -5,6 +5,7 @@ use Getopt::Std; use Date::Format qw(time2str); use File::Temp qw(tempdir); #0.19 for ->newdir() interface, not in 5.10.0 use Net::SFTP::Foreign; +use Expect; use FS::UID qw(adminsuidsetup datasrc); use FS::Record qw(qsearch qsearchs); use FS::pay_batch; @@ -30,6 +31,8 @@ if ( $opt_a ) { unless -w $opt_a; } +my $unzip_check = `which unzip` or die "can't find unzip executable\n"; + #my $tmpdir = File::Temp->newdir(); my $tmpdir = tempdir( CLEANUP => 1 ); #DIR=>somewhere? @@ -39,7 +42,8 @@ my @batchconf = $conf->config('batchconfig-paymentech'); my $username = $batchconf[3] or die "no Paymentech batch username configured\n"; my $password = $batchconf[4] or die "no Paymentech batch password configured\n"; -my $host = ($opt_t ? 'orbitalbatchvar.paymentech.net' : 'orbitalbatch.paymentech.net'); +my $host = ($opt_t ? 'orbitalbatchvar.paymentech.net' + : 'orbitalbatch.paymentech.net'); print STDERR "Connecting to $username\@$host...\n" if $opt_v; my $sftp = Net::SFTP::Foreign->new( host => $host, @@ -64,9 +68,10 @@ BATCH: foreach my $filename (@files) { } #unzip file - system("unzip -P $password -q $tmpdir/${filename}_resp.zip -d $tmpdir"); + system('unzip', '-P', $password, '-q', + "$tmpdir/${filename}_resp.zip", '-d', $tmpdir); if(! -f "$tmpdir/${filename}_resp.xml") { - warn "failed to extract ${filename}_resp.xml\n"; + warn "failed to extract ${filename}_resp.xml from ${filename}_resp.zip\n"; next BATCH; }