diff --git a/app/controllers/case_logs_controller.rb b/app/controllers/case_logs_controller.rb index f887cd08b..b696cc3bc 100644 --- a/app/controllers/case_logs_controller.rb +++ b/app/controllers/case_logs_controller.rb @@ -56,17 +56,16 @@ class CaseLogsController < ApplicationController def submit_form form = FormHandler.instance.get_form("2021_2022") @case_log = CaseLog.find(params[:id]) - page = params[:case_log][:page] - @case_log.current_page = page - responses_for_page = responses_for_page(page) + @case_log.page = params[:case_log][:page] + responses_for_page = responses_for_page(@case_log.page) if @case_log.update(responses_for_page) && (@case_log.soft_errors.empty? || @case_log.soft_errors_overridden?) - @case_log.previous_page = page - redirect_path = get_next_page_path(form, page, @case_log) + @case_log.previous_page = @case_log.page + redirect_path = get_next_page_path(form, @case_log.page, @case_log) redirect_to(send(redirect_path, @case_log)) else - page_info = form.all_pages[page] - back_path = get_previous_page_path(form, page, @case_log) - render "form/page", locals: { form: form, back_path: back_path, page_key: page, page_info: page_info }, status: :unprocessable_entity + page_info = form.all_pages[@case_log.page] + back_path = get_previous_page_path(form, @case_log.page, @case_log) + render "form/page", locals: { form: form, back_path: back_path, page_key: @case_log.page, page_info: page_info }, status: :unprocessable_entity end end diff --git a/app/models/case_log.rb b/app/models/case_log.rb index acaaedae6..99e163fc5 100644 --- a/app/models/case_log.rb +++ b/app/models/case_log.rb @@ -41,11 +41,11 @@ class CaseLog < ApplicationRecord default_scope -> { kept } scope :not_completed, -> { where.not(status: "completed") } - validates_with CaseLogValidator, ({ page: @current_page } || {}) + validates_with CaseLogValidator, ({ page: @page } || {}) before_save :update_status! attr_accessor :previous_page - attr_writer :current_page + attr_accessor :page enum status: { "not_started" => 0, "in_progress" => 1, "completed" => 2 } @@ -121,6 +121,10 @@ private dynamically_not_required << "fixed_term_tenancy" end + unless net_income_in_soft_max_range? || net_income_in_soft_min_range? + dynamically_not_required << "override_net_income_validation" + end + unless tenancy_type == "Other" dynamically_not_required << "other_tenancy_type" end