X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Fcust_main_county.pm;h=d96bd41deed2ffcab5a215842d420b805ef4a93b;hb=583902ab51f62551fe3620d98d42e72620edfa76;hp=28f69c2627124ef09818a58a85171aa736a1c841;hpb=2d3b0ecdb9b1c6f39dcfb64757ed4b9d50abaae0;p=freeside.git diff --git a/FS/FS/cust_main_county.pm b/FS/FS/cust_main_county.pm index 28f69c262..d96bd41de 100644 --- a/FS/FS/cust_main_county.pm +++ b/FS/FS/cust_main_county.pm @@ -61,6 +61,12 @@ currently supported: =item exempt_amount +=item taxname - if defined, printed on invoices instead of "Tax" + +=item setuptax - if 'Y', this tax does not apply to setup fees + +=item recurtax - if 'Y', this tax does not apply to recurring fees + =back =head1 METHODS @@ -104,29 +110,62 @@ sub check { $self->exempt_amount(0) unless $self->exempt_amount; $self->ut_numbern('taxnum') - || $self->ut_textn('state') + || $self->ut_anything('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->ut_enum('setuptax', [ '', 'Y' ] ) + || $self->ut_enum('recurtax', [ '', 'Y' ] ) + || $self->SUPER::check + ; } +sub taxname { + my $self = shift; + if ( $self->dbdef_table->column('taxname') ) { + return $self->setfield('taxname', $_[0]) if @_; + return $self->getfield('taxname'); + } + return ''; +} + +sub setuptax { + my $self = shift; + if ( $self->dbdef_table->column('setuptax') ) { + return $self->setfield('setuptax', $_[0]) if @_; + return $self->getfield('setuptax'); + } + return ''; +} + +sub recurtax { + my $self = shift; + if ( $self->dbdef_table->column('recurtax') ) { + return $self->setfield('recurtax', $_[0]) if @_; + return $self->getfield('recurtax'); + } + return ''; +} + =back =head1 SUBROUTINES =over 4 -=item regionselector [ COUNTY STATE COUNTRY [ PREFIX [ ONCHANGE ] ] ] +=item regionselector [ COUNTY STATE COUNTRY [ PREFIX [ ONCHANGE [ DISABLED ] ] ] ] =cut sub regionselector { my ( $selected_county, $selected_state, $selected_country, - $prefix, $onchange ) = @_; + $prefix, $onchange, $disabled ) = @_; + + $prefix = '' unless defined $prefix; $countyflag = 0; @@ -199,7 +238,7 @@ END my $county_html = $script_html; if ( $countyflag ) { - $county_html .= qq!!; $county_html .= ''; } else { $county_html .= @@ -207,7 +246,7 @@ END } my $state_html = qq!'; my $country_html = qq!