Browse Source

Refactor page buttons

pull/2339/head
Kat 2 years ago
parent
commit
e03484b96d
  1. 26
      app/helpers/form_page_helper.rb
  2. 15
      app/views/form/page.html.erb

26
app/helpers/form_page_helper.rb

@ -18,4 +18,30 @@ module FormPageHelper
def relevant_check_answers_path(log, subsection) def relevant_check_answers_path(log, subsection)
send("#{log.class.name.underscore}_#{subsection.id}_check_answers_path", log) send("#{log.class.name.underscore}_#{subsection.id}_check_answers_path", log)
end end
def submit_button_text(page, referrer)
if accessed_from_duplicate_logs?(referrer) || returning_to_question_page?(page, referrer)
"Save changes"
else
"Save and continue"
end
end
def cancel_button_text(page, referrer)
if accessed_from_duplicate_logs?(referrer) || returning_to_question_page?(page, referrer)
"Cancel"
else
page.skip_text || "Skip for now"
end
end
def cancel_button_link(page, referrer, original_log_id, log)
if accessed_from_duplicate_logs?(referrer)
duplicate_log_set_path(log, original_log_id)
elsif returning_to_question_page?(page, referrer)
send(log.form.cancel_path(page, log), log)
else
page.skip_href(log) || send(log.form.next_page_redirect_path(page, log, current_user), log)
end
end
end end

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

@ -72,19 +72,8 @@
<div class="govuk-button-group"> <div class="govuk-button-group">
<% if !@page.interruption_screen? %> <% if !@page.interruption_screen? %>
<% if accessed_from_duplicate_logs?(request.query_parameters["referrer"]) %> <%= f.govuk_submit submit_button_text(@page, request.query_parameters["referrer"]) %>
<%= f.govuk_submit "Save changes" %> <%= govuk_link_to cancel_button_text(@page, request.query_parameters["referrer"]), cancel_button_link(@page, request.query_parameters["referrer"], request.query_parameters["original_log_id"], @log) %>
<%= govuk_link_to "Cancel", duplicate_log_set_path(@log, request.query_parameters["original_log_id"]) %>
<% elsif returning_to_question_page?(@page, request.query_parameters["referrer"]) %>
<%= f.govuk_submit "Save changes" %>
<%= govuk_link_to "Cancel", send(@log.form.cancel_path(@page, @log), @log) %>
<% else %>
<%= f.govuk_submit "Save and continue" %>
<%= govuk_link_to(
(@page.skip_text || "Skip for now"),
(@page.skip_href(@log) || send(@log.form.next_page_redirect_path(@page, @log, current_user), @log)),
) %>
<% end %>
<% end %> <% end %>
</div> </div>
</div> </div>

Loading…
Cancel
Save