diff options
author | Dave Whiteland <dave@mysociety.org> | 2012-12-19 09:37:36 +0000 |
---|---|---|
committer | Dave Whiteland <dave@mysociety.org> | 2012-12-19 09:37:36 +0000 |
commit | 63e67e942aea02b28690432dda7fda576d49bfcc (patch) | |
tree | a3f67169482865c58069d9c69c3161f14d4d93cc /perllib/FixMyStreet | |
parent | 7a8b3184ddc04d0c9c5cea839def80ace84e6c44 (diff) | |
parent | 4ddc683f0d4819326188072b4733a320097661d5 (diff) |
Merge branch 'tuesday-oxfordshire'
Diffstat (limited to 'perllib/FixMyStreet')
-rw-r--r-- | perllib/FixMyStreet/SendReport/Open311.pm | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/perllib/FixMyStreet/SendReport/Open311.pm b/perllib/FixMyStreet/SendReport/Open311.pm index 0f9c2276a..259dc7202 100644 --- a/perllib/FixMyStreet/SendReport/Open311.pm +++ b/perllib/FixMyStreet/SendReport/Open311.pm @@ -70,10 +70,23 @@ sub send { $extended_desc = 0; } - # extra Oxfordshire fields: send northing and easting, and the FMS id + # extra Oxfordshire fields: send nearest street, postcode, northing and easting, and the FMS id if ( $row->council =~ /$COUNCIL_ID_OXFORDSHIRE/ ) { + my ($postcode, $nearest_street) = ('', ''); + for ($h->{closest_address}) { + $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 = $1 if /Nearest road [^:]+: (?:\d+\w? )?(.*?)(\b[A-Z]+\d|,|$)/m; + } + $postcode = mySociety::PostcodeUtil::is_valid_postcode($h->{query}) + ? $h->{query} : $postcode; # use given postcode if available + my $extra = $row->extra; push @$extra, { name => 'external_id', value => $row->id }; + push @$extra, { name => 'postcode', value => $postcode } if $postcode; + push @$extra, { name => 'nearest_street', value => $nearest_street } if $nearest_street; if ( $row->used_map || ( !$row->used_map && !$row->postcode ) ) { push @$extra, { name => 'northing', value => $h->{northing} }; push @$extra, { name => 'easting', value => $h->{easting} }; |