Browse Source

CLDC-2692: Add breadcrumbs to log question pages

pull/2287/head
Rachael Booth 2 years ago
parent
commit
61c2c23cfc
  1. 16
      app/helpers/form_page_helper.rb
  2. 5
      app/views/form/page.html.erb

16
app/helpers/form_page_helper.rb

@ -10,4 +10,20 @@ module FormPageHelper
def accessed_from_duplicate_logs?(referrer)
%w[duplicate_logs duplicate_logs_banner].include?(referrer)
end
def form_page_breadcrumbs(current_user, log, subsection, query_parameters)
if accessed_from_duplicate_logs?(query_parameters["referrer"])
content_for :breadcrumbs, govuk_breadcrumbs(breadcrumbs: {
breadcrumb_logs_title(log, current_user) => breadcrumb_logs_link(log, current_user),
"Duplicate Logs" => duplicate_logs_path,
"Duplicates of Log #{log.id}" => send("#{log.class.name.underscore}_duplicate_logs_path", log, original_log_id: query_parameters["original_log_id"]),
})
else
content_for :breadcrumbs, govuk_breadcrumbs(breadcrumbs: {
breadcrumb_logs_title(log, current_user) => breadcrumb_logs_link(log, current_user),
"Log #{log.id}" => url_for(log),
subsection.label => send("#{log.class.name.underscore}_#{subsection.id}_check_answers_path", log),
})
end
end
end

5
app/views/form/page.html.erb

@ -1,8 +1,5 @@
<% content_for :title, @page.header.presence || @page.questions.first.header.html_safe %>
<% content_for :before_content do %>
<%= govuk_back_link(href: send(@log.form.previous_page_redirect_path(@page, @log, current_user, params[:referrer]), @log)) %>
<% end %>
<% form_page_breadcrumbs(current_user, @log, @subsection, request.query_parameters) %>
<div data-controller="govukfrontend"></div>
<%= form_with model: @log, url: request.original_url, method: "post", local: true do |f| %>

Loading…
Cancel
Save