diff options
Diffstat (limited to 'perllib/FixMyStreet/SendReport')
-rw-r--r-- | perllib/FixMyStreet/SendReport/Angus.pm | 1 | ||||
-rw-r--r-- | perllib/FixMyStreet/SendReport/EastHants.pm | 6 | ||||
-rw-r--r-- | perllib/FixMyStreet/SendReport/Email.pm | 11 | ||||
-rw-r--r-- | perllib/FixMyStreet/SendReport/Open311.pm | 7 |
4 files changed, 19 insertions, 6 deletions
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/EastHants.pm b/perllib/FixMyStreet/SendReport/EastHants.pm index b24123f94..6baa8a306 100644 --- a/perllib/FixMyStreet/SendReport/EastHants.pm +++ b/perllib/FixMyStreet/SendReport/EastHants.pm @@ -6,7 +6,11 @@ BEGIN { extends 'FixMyStreet::SendReport'; } use Try::Tiny; use Encode; -use HTML::Entities; +use HTML::Entities qw(); + +sub encode_entities { + HTML::Entities::encode_entities($_[0], '\x00-\x1f\x7f<>&"\''); +} sub construct_message { my %h = @_; diff --git a/perllib/FixMyStreet/SendReport/Email.pm b/perllib/FixMyStreet/SendReport/Email.pm index eefb14553..0aacc14a1 100644 --- a/perllib/FixMyStreet/SendReport/Email.pm +++ b/perllib/FixMyStreet/SendReport/Email.pm @@ -74,14 +74,21 @@ sub send { my $cobrand = FixMyStreet::Cobrand->get_class_for_moniker($row->cobrand)->new(); my $params = { To => $self->to, - From => $self->send_from( $row ), }; $cobrand->call_hook(munge_sendreport_params => $row, $h, $params); $params->{Bcc} = $self->bcc if @{$self->bcc}; - my $sender = FixMyStreet::Email::unique_verp_id('report', $row->id); + my $sender; + if ($row->user->email && $row->user->email_verified) { + $sender = FixMyStreet::Email::unique_verp_id('report', $row->id); + $params->{From} = $self->send_from( $row ); + } else { + $sender = FixMyStreet->config('DO_NOT_REPLY_EMAIL'); + my $name = sprintf(_("On behalf of %s"), $params->{From}[1]); + $params->{From} = [ $sender, $name ]; + } if (FixMyStreet::Email::test_dmarc($params->{From}[0]) || Utils::Email::same_domain($params->{From}, $params->{To})) { diff --git a/perllib/FixMyStreet/SendReport/Open311.pm b/perllib/FixMyStreet/SendReport/Open311.pm index eaa223bb2..ecda0bca1 100644 --- a/perllib/FixMyStreet/SendReport/Open311.pm +++ b/perllib/FixMyStreet/SendReport/Open311.pm @@ -49,7 +49,11 @@ sub send { } elsif ($_->{code} eq 'closest_address' && $h->{closest_address}) { push @$extra, { name => $_->{code}, value => $h->{$_->{code}} }; } elsif ($_->{code} =~ /^(easting|northing)$/) { - if ( $row->used_map || ( !$row->used_map && !$row->postcode ) ) { + # NB If there's ever a cobrand with always_send_latlong=0 and + # send_notpinpointed=0 then this line will need changing to + # consider the send_notpinpointed check, as per the + # '#NOTPINPOINTED#' code in perllib/Open311.pm. + if ( $row->used_map || $open311_params{always_send_latlong} ) { push @$extra, { name => $_->{code}, value => $h->{$_->{code}} }; } } @@ -80,7 +84,6 @@ sub send { if ( $resp ) { $row->external_id( $resp ); - $row->send_method_used('Open311'); $result *= 0; $self->success( 1 ); } else { |