diff options
author | Matthew Somerville <matthew-github@dracos.co.uk> | 2018-08-20 13:50:41 +0100 |
---|---|---|
committer | Matthew Somerville <matthew-github@dracos.co.uk> | 2018-08-21 08:46:28 +0100 |
commit | 45e2366c1f86339b33218074a0ac1359250e6d89 (patch) | |
tree | 7c6669d8122bfeebe958494f3cd31c274bcfceb5 | |
parent | f607f2142f7986881d2975dbf682bb825266856d (diff) |
Include user agent in contact form emails.
-rw-r--r-- | CHANGELOG.md | 1 | ||||
-rw-r--r-- | perllib/FixMyStreet/App/Controller/Contact.pm | 1 | ||||
-rw-r--r-- | t/app/controller/contact.t | 2 | ||||
-rw-r--r-- | templates/email/default/contact.html | 5 | ||||
-rw-r--r-- | templates/email/default/contact.txt | 4 |
5 files changed, 11 insertions, 2 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md index ade890b0d..fbdad83f8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -39,6 +39,7 @@ - Cobrand hook for presenting custom search results. #2183 - Cobrand hook to allow extra login conditions #2092 - Add ability for client to set bodies not to be sent to. + - Include user agent in contact form emails. #2206 * v2.3.4 (7th June 2018) diff --git a/perllib/FixMyStreet/App/Controller/Contact.pm b/perllib/FixMyStreet/App/Controller/Contact.pm index 997009b87..3a37d9fa9 100644 --- a/perllib/FixMyStreet/App/Controller/Contact.pm +++ b/perllib/FixMyStreet/App/Controller/Contact.pm @@ -262,6 +262,7 @@ sub send_email : Private { my $from = [ $c->stash->{em}, $c->stash->{form_name} ]; my $params = { to => [ [ $recipient, _($recipient_name) ] ], + user_agent => $c->req->user_agent, }; if (FixMyStreet::Email::test_dmarc($c->stash->{em})) { $params->{'Reply-To'} = [ $from ]; diff --git a/t/app/controller/contact.t b/t/app/controller/contact.t index 4f255f058..cb299d161 100644 --- a/t/app/controller/contact.t +++ b/t/app/controller/contact.t @@ -309,7 +309,7 @@ for my $test ( is $email->header('From'), "\"$test->{fields}->{name}\" <$test->{fields}->{em}>", 'from'; my $body = $mech->get_text_body_from_email($email); like $body, qr/$test->{fields}->{message}/, 'body'; - like $body, qr/Sent by contact.cgi on \S+. IP address (?:\d{1,3}\.){3,}\d{1,3}/, 'body footer'; + like $body, qr/Sent by contact form on \S+.\s+IP address (?:\d{1,3}\.){3,}\d{1,3}, user agent ./, 'body footer'; my $problem_id = $test->{fields}{id}; like $body, qr/Complaint about report $problem_id/, 'reporting a report' if $test->{fields}{id}; diff --git a/templates/email/default/contact.html b/templates/email/default/contact.html index d9e9b060a..8dc9f3af0 100644 --- a/templates/email/default/contact.html +++ b/templates/email/default/contact.html @@ -33,6 +33,11 @@ INCLUDE '_email_top.html'; - <a href="[% admin_url %]">Admin</a> </p> [%~ END %] + [%~ IF user_agent %] + <p style="[% secondary_p_style %]"> + User Agent: [% user_agent | html %] + </p> + [%~ END %] </th> [% INCLUDE '_email_bottom.html' %] diff --git a/templates/email/default/contact.txt b/templates/email/default/contact.txt index 6e1fd5ac9..545b1632c 100644 --- a/templates/email/default/contact.txt +++ b/templates/email/default/contact.txt @@ -6,4 +6,6 @@ Subject: FMS message: [% subject %] [ [% complaint %] - [% problem_url %] - [% admin_url %] ] [% END %] -[ Sent by contact.cgi on [% host %]. IP address [% ip %] ] +-- +Sent by contact form on [% host %]. +IP address [% ip %], user agent [% user_agent %] |