X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2FMisc%2FGeo.pm;h=e83d6dcfea7b6b1e6df2ba89f95f75806bfea89d;hb=2748aaf4aa3f19e17a37edc07e89ee402108900d;hp=1e17b5fcc40fc4f6513894691d9243e7e1539446;hpb=33f5c81279e1de9afd97adb1872c1b11caf7f6f9;p=freeside.git diff --git a/FS/FS/Misc/Geo.pm b/FS/FS/Misc/Geo.pm index 1e17b5fcc..e83d6dcfe 100644 --- a/FS/FS/Misc/Geo.pm +++ b/FS/FS/Misc/Geo.pm @@ -6,7 +6,8 @@ use vars qw( $DEBUG @EXPORT_OK $conf ); use LWP::UserAgent; use HTTP::Request; use HTTP::Request::Common qw( GET POST ); -use JSON; +use HTML::TokeParser; +use Cpanel::JSON::XS; use URI::Escape 3.31; use Data::Dumper; use FS::Conf; @@ -333,8 +334,12 @@ sub standardize_uscensus { censustract => $result->censustract, }; } else { - die "can't parse address '".$result->address."'"; + die "Geocoding returned '".$result->address."', which does not seem to be a valid address.\n"; } + } elsif ( $result->match_level eq 'Tie' ) { + die "Geocoding was not able to identify a unique matching address.\n"; + } elsif ( $result->match_level ) { + die "Geocoding did not find a matching address.\n"; } else { warn Dumper($result) if $DEBUG; die $result->error_message;