aboutsummaryrefslogtreecommitdiffstats
path: root/perllib/FixMyStreet/SendReport
diff options
context:
space:
mode:
Diffstat (limited to 'perllib/FixMyStreet/SendReport')
-rw-r--r--perllib/FixMyStreet/SendReport/Barnet.pm11
1 files changed, 6 insertions, 5 deletions
diff --git a/perllib/FixMyStreet/SendReport/Barnet.pm b/perllib/FixMyStreet/SendReport/Barnet.pm
index 3eb8d2048..9a54dd91d 100644
--- a/perllib/FixMyStreet/SendReport/Barnet.pm
+++ b/perllib/FixMyStreet/SendReport/Barnet.pm
@@ -68,17 +68,18 @@ sub send {
my $interface = BarnetInterfaces::service::ZLBB_SERVICE_ORDER->new();
- my ($nearest_postcode, $nearest_street);
+ my ($nearest_postcode, $nearest_street) = ('', '');
for ($h{closest_address}) {
$nearest_postcode = sprintf("%-10s", $1) if /Nearest postcode [^:]+: ((\w{1,4}\s?\w+|\w+))/;
# use partial postcode or comma as delimiter, strip leading number (possible letter 221B) off too
# "99 Foo Street, London N11 1XX" becomes Foo Street
# "99 Foo Street N11 1XX" becomes Foo Street
- $nearest_street = sprintf("%-30s", $1) if /Nearest road [^:]+: (?:\d+\w? )?(.*?)(\b[A-Z]+\d|,|$)/m;
+ $nearest_street = $1 if /Nearest road [^:]+: (?:\d+\w? )?(.*?)(\b[A-Z]+\d|,|$)/m;
}
- my $postcode = $h{postcode} || $nearest_postcode; # use given postcode if available
+ my $postcode = mySociety::PostcodeUtil::is_valid_postcode($h{query})
+ ? $h{query} : $nearest_postcode; # use given postcode if available
- # note: endpoint can be of form 'https://username:password@:url'
+ # note: endpoint can be of form 'https://username:password@url'
my $council_config = FixMyStreet::App->model("DB::Open311conf")->search( { area_id => COUNCIL_ID_BARNET} )->first;
if ($council_config and $council_config->endpoint) {
$interface->set_proxy($council_config->endpoint);
@@ -116,7 +117,7 @@ sub send {
COUNTY => "", # char30
CITY => "", # char30
POSTALCODE => $postcode, # char10
- STREET => $nearest_street, # char30
+ STREET => truncate_string_with_entities(ent(encode_utf8($nearest_street)), 30), # char30
STREETNUMBER => "", # char5
GEOCODE => $geo_code, # char32
},