From 2d5acabf71d46aa469a6867f294706242c82db98 Mon Sep 17 00:00:00 2001 From: Mark Wells Date: Wed, 26 Nov 2014 16:55:30 -0800 Subject: [PATCH] don't look up or display census tracts for non-U.S. addresses, #32249 --- FS/FS/Misc/Geo.pm | 4 ++++ httemplate/edit/cust_main/bottomfixup.js | 11 +++++++---- httemplate/elements/standardize_locations.js | 13 +++++++++---- httemplate/elements/tr-censustract.html | 2 +- httemplate/misc/confirm-censustract.html | 7 +++++++ httemplate/view/cust_main/locations.html | 22 ++++++++++++---------- httemplate/view/cust_main/packages/location.html | 22 ++++++++++++---------- 7 files changed, 52 insertions(+), 29 deletions(-) diff --git a/FS/FS/Misc/Geo.pm b/FS/FS/Misc/Geo.pm index eb861f321..4ef10850e 100644 --- a/FS/FS/Misc/Geo.pm +++ b/FS/FS/Misc/Geo.pm @@ -42,6 +42,10 @@ sub get_censustract_ffiec { my $location = shift; my $year = shift; + if ( length($location->{country}) and uc($location->{country}) ne 'US' ) { + return ''; + } + warn Dumper($location, $year) if $DEBUG; my $url = 'http://www.ffiec.gov/Geocode/default.aspx'; diff --git a/httemplate/edit/cust_main/bottomfixup.js b/httemplate/edit/cust_main/bottomfixup.js index 5a8835f53..8aef1e72c 100644 --- a/httemplate/edit/cust_main/bottomfixup.js +++ b/httemplate/edit/cust_main/bottomfixup.js @@ -116,10 +116,13 @@ function confirm_censustract(pre) { '<%$p%>/misc/confirm-censustract.html', 'q=' + encodeURIComponent(JSON.stringify(address_info)), function() { - overlib( OLresponseAJAX, CAPTION, 'Confirm censustract', STICKY, - AUTOSTATUSCAP, CLOSETEXT, '', MIDX, 0, MIDY, 0, DRAGGABLE, WIDTH, - 576, HEIGHT, 268, BGCOLOR, '#333399', CGCOLOR, '#333399', - TEXTSIZE, 3 ); + if ( OLresponseAJAX ) { + overlib( OLresponseAJAX, CAPTION, 'Confirm censustract', STICKY, + AUTOSTATUSCAP, CLOSETEXT, '', MIDX, 0, MIDY, 0, DRAGGABLE, WIDTH, + 576, HEIGHT, 268, BGCOLOR, '#333399', CGCOLOR, '#333399', + TEXTSIZE, 3 ); + } else + submit_continue(); }, 0); } else submit_continue(); diff --git a/httemplate/elements/standardize_locations.js b/httemplate/elements/standardize_locations.js index 2d1fc7423..307f822c9 100644 --- a/httemplate/elements/standardize_locations.js +++ b/httemplate/elements/standardize_locations.js @@ -293,10 +293,15 @@ function confirm_censustract() { '<%$p%>/misc/confirm-censustract.html', 'q=' + encodeURIComponent(JSON.stringify(address_info)), function() { - overlib( OLresponseAJAX, CAPTION, 'Confirm censustract', STICKY, - AUTOSTATUSCAP, CLOSETEXT, '', MIDX, 0, MIDY, 0, DRAGGABLE, WIDTH, - 576, HEIGHT, 268, BGCOLOR, '#333399', CGCOLOR, '#333399', - TEXTSIZE, 3 ); + if ( OLresponseAJAX ) { + overlib( OLresponseAJAX, CAPTION, 'Confirm censustract', STICKY, + AUTOSTATUSCAP, CLOSETEXT, '', MIDX, 0, MIDY, 0, DRAGGABLE, WIDTH, + 576, HEIGHT, 268, BGCOLOR, '#333399', CGCOLOR, '#333399', + TEXTSIZE, 3 ); + } else { + // no response + <% $post_censustract %>; + } }, 0); } else { diff --git a/httemplate/elements/tr-censustract.html b/httemplate/elements/tr-censustract.html index bd014f11b..7a4b34943 100644 --- a/httemplate/elements/tr-censustract.html +++ b/httemplate/elements/tr-censustract.html @@ -1,4 +1,4 @@ -% if ($censustract) { +% if ($location->country eq 'US' and $censustract) { <% mt('Census tract') |h %> diff --git a/httemplate/misc/confirm-censustract.html b/httemplate/misc/confirm-censustract.html index 880cade3a..024bc17c4 100644 --- a/httemplate/misc/confirm-censustract.html +++ b/httemplate/misc/confirm-censustract.html @@ -1,3 +1,10 @@ +% if ( !$error and !$new_tract ) { +% # then set_censustract returned nothing +% # because it's not relevant for this address +% # so output nothing (forces confirm_censustract() to continue) +% $m->clear_buffer; +% $m->abort; +% }

% if ( $error ) { Census tract error diff --git a/httemplate/view/cust_main/locations.html b/httemplate/view/cust_main/locations.html index fdbbc396b..336c1aa98 100755 --- a/httemplate/view/cust_main/locations.html +++ b/httemplate/view/cust_main/locations.html @@ -35,16 +35,18 @@ table.location {
<% $loc->location_label %> -% if ( $loc->censustract ) { -
- - <% $loc->censustract %> (<% $loc->censusyear %> census) - -% } elsif ( $conf->exists('cust_main-require_censustract') ) { -
- - <% emt('Census tract unknown') %> - +% if ( $loc->country eq 'US' ) { # only U.S. census tracts for now +% if ( $loc->censustract ) { +
+ + <% $loc->censustract %> (<% $loc->censusyear %> census) + +% } elsif ( $conf->exists('cust_main-require_censustract') ) { +
+ + <% emt('Census tract unknown') %> + +% } % }
diff --git a/httemplate/view/cust_main/packages/location.html b/httemplate/view/cust_main/packages/location.html index c5ef10ee4..99d91e514 100644 --- a/httemplate/view/cust_main/packages/location.html +++ b/httemplate/view/cust_main/packages/location.html @@ -30,16 +30,18 @@ &> % } -% if ( $loc->censustract ) { -
- - <% $loc->censustract %> (<% $loc->censusyear %> census) - -% } elsif ( $opt{'cust_main-require_censustract'} ) { -
- - <% emt('Census tract unknown') %> - +% if ( $loc->country eq 'US' ) { +% if ( $loc->censustract ) { +
+ + <% $loc->censustract %> (<% $loc->censusyear %> census) + +% } elsif ( $opt{'cust_main-require_censustract'} ) { +
+ + <% emt('Census tract unknown') %> + +% } % } % if ( $default ) { -- 2.11.0