Skip to content

Commit

Permalink
Admin view of unmasked incoming message
Browse files Browse the repository at this point in the history
Admins often want to view the contents of an incoming message without
any masking or censor rules applied.

In some cases you can inspect the raw email, but it's often base64
encoded, which means needing to download the email and open it in a mail
client. Even when the email is not base64 encoded, it's often difficult
to mentally parse the information out when there are lots of headers,
attachment sections and HTML body content.

This commit adds an unmasked view of main body part attachments. This is
equivalent to the main body contents of an incoming message that we show
in public.

This does require "downloading" the attachment from Active Storage, but
at present we use local file storage for attachments, so that's fine.
Even if we moved them to S3 it wouldn't be a disaster to fetch them each
time, as this isn't a frequently viewed page.

Needed to use an `!important` CSS rule to improve the visual rendering
as for some reason bootstrap sets `margin-bottom: 0;` on `p` tags within
a `blockquote` element (See
bootstrap-sass-2.3.2.2/vendor/assets/stylesheets/bootstrap/_type.scss).

Fixes #1106.
  • Loading branch information
garethrees committed Nov 10, 2023
1 parent 00f13d2 commit f6bbc01
Show file tree
Hide file tree
Showing 3 changed files with 21 additions and 0 deletions.
9 changes: 9 additions & 0 deletions app/assets/stylesheets/admin.scss
Original file line number Diff line number Diff line change
Expand Up @@ -145,6 +145,15 @@ body.admin {
display: inline;
}

blockquote .well p {
font-size: 14px;
margin-bottom: 1em !important;

&:last-child {
margin-bottom: 0 !important;
}
}

div#user_locale_switcher {
div.btn-group:before,
div.btn-group:after {
Expand Down
11 changes: 11 additions & 0 deletions app/views/admin/foi_attachments/edit.html.erb
Original file line number Diff line number Diff line change
Expand Up @@ -44,3 +44,14 @@
<%= submit_tag 'Save', class: 'btn btn-success' %>
</div>
<% end %>

<% if @foi_attachment.main_body_part? %>
<hr />
<h2>Unmasked message body (quotes unfolded):</h2>

<blockquote>
<div class="well well-small">
<%= simple_format(@foi_attachment.unmasked_body) %>
</div>
</blockquote>
<% end %>
1 change: 1 addition & 0 deletions doc/CHANGES.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

## Highlighted Features

* Add admin view of unmasked version of main body part attachments (Gareth Rees)
* Add internal ID number to authority CSV download (Alex Parsons, Graeme
Porteous)

Expand Down

0 comments on commit f6bbc01

Please sign in to comment.