X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Fagent.pm;h=5fbe2c46d5d69f41c65563be681ce490a88d256b;hb=a70e4bb88f298f93292380d1e2feb80e1baa13f8;hp=e471e04a5fffb4d8ad1a3e0e48b6fa83a7d6c489;hpb=32db3ad86bcf04e4f34705a396b718061d333f20;p=freeside.git diff --git a/FS/FS/agent.pm b/FS/FS/agent.pm index e471e04a5..5fbe2c46d 100644 --- a/FS/FS/agent.pm +++ b/FS/FS/agent.pm @@ -225,16 +225,21 @@ sub payment_gateway { my $taxclass = ''; if ( $options{invnum} ) { + my $cust_bill = qsearchs('cust_bill', { 'invnum' => $options{invnum} } ); die "invnum ". $options{'invnum'}. " not found" unless $cust_bill; - my @taxclasses = - map { $_->part_pkg->taxclass } + + my @part_pkg = + map { $_->part_pkg } grep { $_ } map { $_->cust_pkg } $cust_bill->cust_bill_pkg; - unless ( grep { $taxclasses[0] ne $_ } @taxclasses ) { #unless there are - #different taxclasses $taxclass = $taxclasses[0]; - } + + my @taxclasses = map $_->taxclass, @part_pkg; + + $taxclass = $taxclasses[0] + unless grep { $taxclasses[0] ne $_ } @taxclasses; #unless there are + #different taxclasses } #look for an agent gateway override first