From: jeff Date: Mon, 5 Jan 2009 21:12:06 +0000 (+0000) Subject: doh! change the interface here, too X-Git-Tag: root_of_webpay_support~154 X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=commitdiff_plain;h=0a78989c9f9e1d447c7e854a856820f5b9e05d06 doh! change the interface here, too --- diff --git a/FS/FS/tax_rate.pm b/FS/FS/tax_rate.pm index ce460e192..4b906d33d 100644 --- a/FS/FS/tax_rate.pm +++ b/FS/FS/tax_rate.pm @@ -342,16 +342,28 @@ sub passtype_name { $tax_passtypes{$self->passtype}; } -=item taxline CUST_BILL_PKG|AMOUNT, ... +=item taxline TAXABLES, [ OPTIONSHASH ] Returns a listref of a name and an amount of tax calculated for the list -of packages/amounts. If an error occurs, a message is returned as a scalar. +of packages/amounts referenced by TAXABLES. If an error occurs, a message +is returned as a scalar. =cut sub taxline { my $self = shift; + my $taxables; + my %opt = (); + + if (ref($_[0]) eq 'ARRAY') { + $taxables = shift; + %opt = @_; + }else{ + $taxables = [ @_ ]; + #exemptions would be broken in this case + } + my $name = $self->taxname; $name = 'Other surcharges' if ($self->passtype == 2); @@ -361,7 +373,8 @@ sub taxline { if $self->disabled; my $taxable_charged = 0; - my @cust_bill_pkg = grep { $taxable_charged += $_ unless ref; ref; } @_; + my @cust_bill_pkg = grep { $taxable_charged += $_ unless ref; ref; } + @$taxables; warn "calculating taxes for ". $self->taxnum. " on ". join (",", map { $_->pkgnum } @cust_bill_pkg)