aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthew Somerville <matthew-github@dracos.co.uk>2017-12-06 13:24:58 +0000
committerMatthew Somerville <matthew-github@dracos.co.uk>2017-12-13 13:32:31 +0000
commitae0449e38a8deb2bd88d904e006f55be137871cf (patch)
treefe9aee7de76b05041923e6681c3689adcbb8b268
parent83c2d924404740ff8ab5e7200a470fc28325ff6a (diff)
Store all successful send methods.
-rw-r--r--CHANGELOG.md1
-rw-r--r--perllib/FixMyStreet/DB/Result/Problem.pm11
-rw-r--r--perllib/FixMyStreet/Script/Reports.pm4
-rw-r--r--perllib/FixMyStreet/SendReport/Angus.pm1
-rw-r--r--perllib/FixMyStreet/SendReport/Open311.pm1
-rw-r--r--templates/web/fixmystreet.com/report/updates-sidebar-notes.html2
6 files changed, 16 insertions, 4 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 0f950e974..32f05c9de 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -55,6 +55,7 @@
- Consolidate various admin summary statistics page. #1919.
- 'Auto-response' flag on response templates is honoured for fetched
Open311 updates. #1924
+ - Store all successful send methods. #1933
- UK:
- Use SVG logo, inlined on front page. #1887
- Inline critical CSS on front page.
diff --git a/perllib/FixMyStreet/DB/Result/Problem.pm b/perllib/FixMyStreet/DB/Result/Problem.pm
index 3866532e9..8625bf17a 100644
--- a/perllib/FixMyStreet/DB/Result/Problem.pm
+++ b/perllib/FixMyStreet/DB/Result/Problem.pm
@@ -867,6 +867,17 @@ sub update_send_failed {
} );
}
+sub add_send_method {
+ my $self = shift;
+ my $sender = shift;
+ ($sender = ref $sender) =~ s/^.*:://;
+ if (my $send_method = $self->send_method_used) {
+ $self->send_method_used("$send_method,$sender");
+ } else {
+ $self->send_method_used($sender);
+ }
+}
+
sub as_hashref {
my $self = shift;
my $c = shift;
diff --git a/perllib/FixMyStreet/Script/Reports.pm b/perllib/FixMyStreet/Script/Reports.pm
index 1ea98342c..04ad1c893 100644
--- a/perllib/FixMyStreet/Script/Reports.pm
+++ b/perllib/FixMyStreet/Script/Reports.pm
@@ -222,7 +222,9 @@ sub send(;$) {
for my $sender ( keys %reporters ) {
debug_print("sending using " . $sender, $row->id) if $debug_mode;
$sender = $reporters{$sender};
- $result *= $sender->send( $row, \%h );
+ my $res = $sender->send( $row, \%h );
+ $result *= $res;
+ $row->add_send_method($sender) if !$res;
if ( $sender->unconfirmed_counts) {
foreach my $e (keys %{ $sender->unconfirmed_counts } ) {
foreach my $c (keys %{ $sender->unconfirmed_counts->{$e} }) {
diff --git a/perllib/FixMyStreet/SendReport/Angus.pm b/perllib/FixMyStreet/SendReport/Angus.pm
index b552fbd9d..4ba5f3070 100644
--- a/perllib/FixMyStreet/SendReport/Angus.pm
+++ b/perllib/FixMyStreet/SendReport/Angus.pm
@@ -154,7 +154,6 @@ sub send {
my $external_id = $self->get_external_id( $result );
if ( $external_id ) {
$row->external_id( $external_id );
- $row->send_method_used('Angus');
$return = 0;
}
} catch {
diff --git a/perllib/FixMyStreet/SendReport/Open311.pm b/perllib/FixMyStreet/SendReport/Open311.pm
index 467030a89..ecda0bca1 100644
--- a/perllib/FixMyStreet/SendReport/Open311.pm
+++ b/perllib/FixMyStreet/SendReport/Open311.pm
@@ -84,7 +84,6 @@ sub send {
if ( $resp ) {
$row->external_id( $resp );
- $row->send_method_used('Open311');
$result *= 0;
$self->success( 1 );
} else {
diff --git a/templates/web/fixmystreet.com/report/updates-sidebar-notes.html b/templates/web/fixmystreet.com/report/updates-sidebar-notes.html
index 90e88d86c..17e3ade62 100644
--- a/templates/web/fixmystreet.com/report/updates-sidebar-notes.html
+++ b/templates/web/fixmystreet.com/report/updates-sidebar-notes.html
@@ -1,5 +1,5 @@
<p>
- [% IF problem.send_method_used != 'Open311' OR NOT problem.to_body_named('Bromley|Stevenage') %]
+ [% IF NOT problem.send_method_used.match('Open311') OR NOT problem.to_body_named('Bromley|Stevenage') %]
[% loc( 'Please note that updates are not sent to the council.' ) %]
[% END %]
[% loc( 'Your information will only be used in accordance with our <a href="/privacy">privacy policy</a>' ) %]