aboutsummaryrefslogtreecommitdiffstats
path: root/perllib/FixMyStreet
diff options
context:
space:
mode:
authorMatthew Somerville <matthew@mysociety.org>2020-04-09 13:48:48 +0100
committerMatthew Somerville <matthew@mysociety.org>2020-04-15 07:47:12 +0100
commitddfbb2a529ec5f5977a6f4d65aa52648cf2a707e (patch)
treefd2d1e9b5007f0b42523304f365e3b15fd3e801b /perllib/FixMyStreet
parent51cf9b915f2273c787f0a64658b56de941ae1c3a (diff)
[Peterborough] Improve extra question handling.
Ignore (for Open311-sending purposes) any questions whose code starts "PCC-", so that it is easier to use the admin to add extra questions, and move the removal of the extra questions to a more normal location so answers are not lost when extra fields is reset post-send.
Diffstat (limited to 'perllib/FixMyStreet')
-rw-r--r--perllib/FixMyStreet/Cobrand/Peterborough.pm18
1 files changed, 9 insertions, 9 deletions
diff --git a/perllib/FixMyStreet/Cobrand/Peterborough.pm b/perllib/FixMyStreet/Cobrand/Peterborough.pm
index 107534674..882bef7eb 100644
--- a/perllib/FixMyStreet/Cobrand/Peterborough.pm
+++ b/perllib/FixMyStreet/Cobrand/Peterborough.pm
@@ -40,17 +40,17 @@ sub geocoder_munge_results {
sub admin_user_domain { "peterborough.gov.uk" }
-around 'open311_config' => sub {
- my ($orig, $self, $row, $h, $params) = @_;
+# remove categories which are informational only
+sub open311_pre_send {
+ my ($self, $row, $open311) = @_;
- # remove categories which are informational only
+ return unless $row->extra;
my $extra = $row->get_extra_fields;
- @$extra = grep { $_->{name} ne 'emergency' } @$extra;
- @$extra = grep { $_->{name} ne 'private_land' } @$extra;
- $row->set_extra_fields(@$extra);
-
- $self->$orig($row, $h, $params);
-};
+ if (@$extra) {
+ @$extra = grep { $_->{name} !~ /^(PCC-|emergency$|private_land$)/i } @$extra;
+ $row->set_extra_fields(@$extra);
+ }
+}
sub lookup_site_code_config { {
buffer => 50, # metres