Browse Source

Update is_referrer_interruption_screen? check and naming

pull/1584/head
Kat 3 years ago
parent
commit
58bacba660
  1. 15
      app/controllers/form_controller.rb

15
app/controllers/form_controller.rb

@ -11,7 +11,7 @@ class FormController < ApplicationController
mandatory_questions_with_no_response = mandatory_questions_with_no_response(responses_for_page)
if mandatory_questions_with_no_response.empty? && @log.update(responses_for_page.merge(updated_by: current_user))
flash[:notice] = "You have successfully updated #{@page.questions.map(&:check_answer_label).join(', ').downcase}" if interruption_screen_referrer.present?
flash[:notice] = "You have successfully updated #{@page.questions.map(&:check_answer_label).join(', ').downcase}" if previous_interruption_screen_page_id.present?
redirect_to(successful_redirect_path)
else
mandatory_questions_with_no_response.map do |question|
@ -54,7 +54,7 @@ class FormController < ApplicationController
page_id = request.path.split("/")[-1].underscore
@page = form.get_page(page_id)
@subsection = form.subsection_for_page(@page)
if @page.routed_to?(@log, current_user) || @page.interruption_screen?
if @page.routed_to?(@log, current_user) || is_referrer_interruption_screen?
render "form/page"
else
redirect_to @log.lettings? ? lettings_log_path(@log) : sales_log_path(@log)
@ -125,7 +125,12 @@ private
referrer.present? && CGI.parse(referrer.split("?")[-1]).present? && CGI.parse(referrer.split("?")[-1])["referrer"][0] == "check_answers"
end
def interruption_screen_referrer
def is_referrer_interruption_screen?
referrer = request.headers["HTTP_REFERER"].presence || ""
referrer.present? && CGI.parse(referrer.split("?")[-1]).present? && CGI.parse(referrer.split("?")[-1])["referrer"][0] == "interruption_screen"
end
def previous_interruption_screen_page_id
params[@log.model_name.param_key]["interruption_page_id"]
end
@ -141,8 +146,8 @@ private
return send("#{@log.model_name.param_key}_#{form.subsection_for_page(@page).id}_check_answers_path", @log)
end
end
if interruption_screen_referrer.present?
return send("#{@log.class.name.underscore}_#{interruption_screen_referrer}_path", @log)
if previous_interruption_screen_page_id.present?
return send("#{@log.class.name.underscore}_#{previous_interruption_screen_page_id}_path", @log)
end
redirect_path = form.next_page_redirect_path(@page, @log, current_user)

Loading…
Cancel
Save