% if ( $error ) { #better to redirect back to %# <% $cgi->redirect("$url?". $cgi->query_string ) %> <% include('/elements/header-popup.html', "Error ${action}ing taxes" ) %> Error: <% $error |h %>

% } else { <% include('/elements/header-popup.html', "Taxes ${action}ed") %> % } <%init> $cgi->param('taxnum') =~ /^([\d,]+)$/ or die 'Guru Meditation #69'; #??? should have been passed in my @taxnum = split(',', $1); $cgi->param('action') =~ /^(add|edit)$/ or die "unknown action"; my $action = $1; my $rate_only = $cgi->param('rate_only') if $cgi->param('rate_only'); my $error = ''; foreach my $taxnum ( @taxnum ) { my $cust_main_county = qsearchs('cust_main_county', { 'taxnum' => $taxnum } ) or die "unknown taxnum: $taxnum"; if ( $action eq 'edit' || $cust_main_county->tax == 0 ) { #let's replace if ($rate_only) { $cust_main_county->set( tax => scalar($cgi->param('tax')) ); } else { foreach (qw( taxname tax exempt_amount setuptax recurtax )) { $cust_main_county->set( $_ => scalar($cgi->param($_)) ) } } $error = $cust_main_county->replace and last; } else { #let's insert a new record my $new = new FS::cust_main_county { ( map { $_ => scalar($cgi->param($_)) } qw( taxname tax exempt_amount setuptax recurtax ) ), ( map { $_ => $cust_main_county->get($_) } qw( country state county city district taxclass ) ) }; $error = $new->insert and last; } } if ( $error ) { $cgi->param('error', $error); }