X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Fcust_main_county.pm;h=f631d8cae251683d64c59a41e02d09e497432797;hb=8ba4df7e0fab1faa2032b8311a195d297502e4b2;hp=95ed53dabab00feca92ee1e903a65e9cb7075afa;hpb=74f795a943560dfc03f46642536386ce36355bb4;p=freeside.git diff --git a/FS/FS/cust_main_county.pm b/FS/FS/cust_main_county.pm index 95ed53dab..f631d8cae 100644 --- a/FS/FS/cust_main_county.pm +++ b/FS/FS/cust_main_county.pm @@ -57,6 +57,12 @@ currently supported: =item tax - percentage +=item taxclass + +=item exempt_amount + +=item taxname - if defined, printed on invoices instead of "Tax" + =back =head1 METHODS @@ -97,12 +103,19 @@ methods. sub check { my $self = shift; + $self->exempt_amount(0) unless $self->exempt_amount; + $self->ut_numbern('taxnum') || $self->ut_textn('state') || $self->ut_textn('county') || $self->ut_text('country') || $self->ut_float('tax') - ; + || $self->ut_textn('taxclass') # ... + || $self->ut_money('exempt_amount') + || $self->ut_textn('taxname') + || $self->SUPER::check + ; + } @@ -120,13 +133,16 @@ sub regionselector { my ( $selected_county, $selected_state, $selected_country, $prefix, $onchange ) = @_; + $prefix = '' unless defined $prefix; + $countyflag = 0; # unless ( @cust_main_county ) { #cache @cust_main_county = qsearch('cust_main_county', {} ); foreach my $c ( @cust_main_county ) { $countyflag=1 if $c->county; - push @{$cust_main_county{$c->country}{$c->state}}, $c->county; + #push @{$cust_main_county{$c->country}{$c->state}}, $c->county; + $cust_main_county{$c->country}{$c->state}{$c->county} = 1; } # } $countyflag=1 if $selected_county; @@ -171,7 +187,8 @@ END $script_html .= "\nif ( country == \"$country\" ) {\n"; foreach my $state ( sort keys %{$cust_main_county{$country}} ) { $script_html .= "\nif ( state == \"$state\" ) {\n"; - foreach my $county ( sort @{$cust_main_county{$country}{$state}} ) { + #foreach my $county ( sort @{$cust_main_county{$country}{$state}} ) { + foreach my $county ( sort keys %{$cust_main_county{$country}{$state}} ) { my $text = $county || '(n/a)'; $script_html .= qq!opt(what.form.${prefix}county, "$county", "$text");\n!; @@ -227,7 +244,7 @@ END =head1 BUGS -regionseletor? putting web ui components in here? they should probably live +regionselector? putting web ui components in here? they should probably live somewhere else... =head1 SEE ALSO