diff options
Diffstat (limited to 'perllib/FixMyStreet')
-rw-r--r-- | perllib/FixMyStreet/DB/Result/Problem.pm | 11 | ||||
-rw-r--r-- | perllib/FixMyStreet/Script/Reports.pm | 4 | ||||
-rw-r--r-- | perllib/FixMyStreet/SendReport/Angus.pm | 1 | ||||
-rw-r--r-- | perllib/FixMyStreet/SendReport/Open311.pm | 1 |
4 files changed, 14 insertions, 3 deletions
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 { |