Skip to content

Commit

Permalink
Change forms pages to use different data
Browse files Browse the repository at this point in the history
- rework the list of documents on the forms pages to use the content item data in `details->attachments` to render the required content, in place of the data in `details->documents`, which is pre-rendered
- will make putting tracking onto these elements easier
  • Loading branch information
andysellick committed Jan 15, 2024
1 parent eff11be commit d194743
Show file tree
Hide file tree
Showing 6 changed files with 27 additions and 23 deletions.
2 changes: 1 addition & 1 deletion app/presenters/publication_presenter.rb
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ def details
end

def documents
content_item["details"]["documents"].to_a.join("")
content_item["details"]["attachments"].select { |a| a["locale"] == locale }
end

def featured_attachments
Expand Down
22 changes: 13 additions & 9 deletions app/views/content_items/_attachments.html.erb
Original file line number Diff line number Diff line change
@@ -1,17 +1,21 @@
<% attachments ||= [] %>
<% attachment_details = attachments.filter_map { |id| @content_item&.attachment_details(id) } %>
<% if legacy_pre_rendered_documents.present? || attachment_details.any? %>
<% featured_attachments ||= [] %>
<% attachment_details = featured_attachments.filter_map { |id| @content_item&.attachment_details(id) } %>
<% if attachments.present? || attachment_details.any? %>
<section id="<%= title.parameterize %>">
<%= render 'govuk_publishing_components/components/heading',
text: title,
mobile_top_margin: true %>

<% if legacy_pre_rendered_documents.present? %>
<%= render 'govuk_publishing_components/components/govspeak', {
direction: page_text_direction,
} do %>
<% add_gem_component_stylesheet("details") if legacy_pre_rendered_documents.include? "govuk\-details" %>
<%= raw(legacy_pre_rendered_documents) %>
<% add_gem_component_stylesheet("details") %>
<% if attachments.present? %>
<% attachments.each do |details| %>
<%= details.inspect %>
<div class="govuk-!-static-margin-bottom-6">
<%= render 'govuk_publishing_components/components/attachment', {
heading_level: 3,
attachment: details
} %>
</div>
<% end %>
<% else %>
<% attachment_details.each do |details| %>
Expand Down
8 changes: 4 additions & 4 deletions app/views/content_items/call_for_evidence.html.erb
Original file line number Diff line number Diff line change
Expand Up @@ -44,8 +44,8 @@

<%= render "attachments",
title: t("call_for_evidence.download_outcome"),
legacy_pre_rendered_documents: @content_item.outcome_documents,
attachments: @content_item.outcome_attachments %>
attachments: @content_item.outcome_documents,
featured_attachments: @content_item.outcome_attachments %>

<%= render 'govuk_publishing_components/components/heading', text: t("call_for_evidence.detail_of_outcome"), mobile_top_margin: true %>
<div class="call-for-evidence-outcome-detail">
Expand Down Expand Up @@ -118,8 +118,8 @@

<%= render "attachments",
title: t("call_for_evidence.documents"),
legacy_pre_rendered_documents: @content_item.documents,
attachments: @content_item.featured_attachments %>
attachments: @content_item.documents,
featured_attachments: @content_item.featured_attachments %>
</div>

<% if @content_item.ways_to_respond? %>
Expand Down
12 changes: 6 additions & 6 deletions app/views/content_items/consultation.html.erb
Original file line number Diff line number Diff line change
Expand Up @@ -55,8 +55,8 @@

<%= render "attachments",
title: t("consultation.download_outcome"),
legacy_pre_rendered_documents: @content_item.final_outcome_documents,
attachments: @content_item.final_outcome_attachments %>
attachments: @content_item.final_outcome_documents,
featured_attachments: @content_item.final_outcome_attachments %>

<%= render 'govuk_publishing_components/components/heading', text: t("consultation.detail_of_outcome"), mobile_top_margin: true %>
<div class="consultation-outcome-detail">
Expand All @@ -70,8 +70,8 @@

<%= render "attachments",
title: t("consultation.feedback_received"),
legacy_pre_rendered_documents: @content_item.public_feedback_documents,
attachments: @content_item.public_feedback_attachments %>
attachments: @content_item.public_feedback_documents,
featured_attachments: @content_item.public_feedback_attachments %>

<% if @content_item.public_feedback_detail %>
<%= render 'govuk_publishing_components/components/heading', {
Expand Down Expand Up @@ -148,8 +148,8 @@

<%= render "attachments",
title: t("consultation.documents"),
legacy_pre_rendered_documents: @content_item.documents,
attachments: @content_item.featured_attachments %>
attachments: @content_item.documents,
featured_attachments: @content_item.featured_attachments %>
</div>

<% if @content_item.ways_to_respond? %>
Expand Down
4 changes: 2 additions & 2 deletions app/views/content_items/publication.html.erb
Original file line number Diff line number Diff line change
Expand Up @@ -51,8 +51,8 @@
<div class="responsive-bottom-margin">
<%= render "attachments",
title: t("publication.documents", count: 5), # This should always be pluralised.
legacy_pre_rendered_documents: @content_item.documents,
attachments: @content_item.featured_attachments
attachments: @content_item.documents,
featured_attachments: @content_item.featured_attachments
%>

<section id="details">
Expand Down
2 changes: 1 addition & 1 deletion test/presenters/publication_presenter_test.rb
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ def schema_name
assert_equal schema_item["schema_name"], presented_item.schema_name
assert_equal schema_item["title"], presented_item.title
assert_equal schema_item["details"]["body"], presented_item.details
assert_equal schema_item["details"]["documents"].join(""), presented_item.documents
assert_equal schema_item["details"]["documents"], presented_item.documents_attachments
end

test "#published returns a formatted date of the day the content item became public" do
Expand Down

0 comments on commit d194743

Please sign in to comment.