summaryrefslogtreecommitdiff
path: root/httemplate/edit/process
diff options
context:
space:
mode:
authorivan <ivan>2009-10-12 01:45:12 +0000
committerivan <ivan>2009-10-12 01:45:12 +0000
commit0b94e40c533288be69a4fe60da36a385d31eff7f (patch)
tree8284d3c555e7b0cdfd731c567059f7f60319e3c0 /httemplate/edit/process
parent990e040448691dd4bd26c871274c65204cb7707b (diff)
UI for per-city taxes (setup and assigning to customers/package locations), RT#5852
Diffstat (limited to 'httemplate/edit/process')
-rwxr-xr-xhttemplate/edit/process/cust_main_county-collapse.cgi19
-rwxr-xr-xhttemplate/edit/process/cust_main_county-expand.cgi15
2 files changed, 24 insertions, 10 deletions
diff --git a/httemplate/edit/process/cust_main_county-collapse.cgi b/httemplate/edit/process/cust_main_county-collapse.cgi
index 18bd1fde2..9608fc919 100755
--- a/httemplate/edit/process/cust_main_county-collapse.cgi
+++ b/httemplate/edit/process/cust_main_county-collapse.cgi
@@ -12,10 +12,15 @@ my $cust_main_county = qsearchs('cust_main_county', { 'taxnum' => $taxnum } )
#really should do this in a .pm & start transaction
-foreach my $delete ( qsearch('cust_main_county', {
- 'country' => $cust_main_county->country,
- 'state' => $cust_main_county->state
- } ) ) {
+my %search = (
+ 'country' => $cust_main_county->country,
+ 'state' => $cust_main_county->state,
+ );
+
+$search{'county'} = $cust_main_county->county
+ if $cust_main_county->city;
+
+foreach my $delete ( qsearch('cust_main_county', \%search) ) {
# unless ( qsearch('cust_main',{
# 'state' => $cust_main_county->getfield('state'),
# 'county' => $cust_main_county->getfield('county'),
@@ -30,7 +35,11 @@ foreach my $delete ( qsearch('cust_main_county', {
}
$cust_main_county->taxnum('');
-$cust_main_county->county('');
+if ( $cust_main_county->city ) {
+ $cust_main_county->city('');
+} else {
+ $cust_main_county->county('');
+}
my $error = $cust_main_county->insert;
die $error if $error;
diff --git a/httemplate/edit/process/cust_main_county-expand.cgi b/httemplate/edit/process/cust_main_county-expand.cgi
index 04533a539..9984b08fa 100755
--- a/httemplate/edit/process/cust_main_county-expand.cgi
+++ b/httemplate/edit/process/cust_main_county-expand.cgi
@@ -48,17 +48,21 @@ foreach ( @expansion) {
$new->setfield('taxclass', $_);
} elsif ( ! $cust_main_county->state ) {
$new->setfield('state',$_);
- } else {
+ } elsif ( ! $cust_main_county->county ) {
$new->setfield('county',$_);
+ } else {
+ #uppercase cities in the US to try and agree with USPS validation
+ $new->setfield('city', $new->country eq 'US' ? uc($_) : $_ );
}
my $error = $new->insert;
die $error if $error;
}
unless ( qsearch( 'cust_main', {
- 'state' => $cust_main_county->state,
- 'county' => $cust_main_county->county,
- 'country' => $cust_main_county->country,
+ 'city' => $cust_main_county->city,
+ 'county' => $cust_main_county->county,
+ 'state' => $cust_main_county->state,
+ 'country' => $cust_main_county->country,
} )
|| ! @expansion
) {
@@ -68,8 +72,9 @@ unless ( qsearch( 'cust_main', {
if ( $cgi->param('taxclass') ) {
print $cgi->redirect(popurl(3). "browse/cust_main_county.cgi?".
- 'state='. uri_escape($cust_main_county->state ).';'.
+ 'city='. uri_escape($cust_main_county->city ).';'.
'county='. uri_escape($cust_main_county->county ).';'.
+ 'state='. uri_escape($cust_main_county->state ).';'.
'country='. uri_escape($cust_main_county->country)
);
myexit;