From 82f84cd6aacb800563352ffc95572ecae0762258 Mon Sep 17 00:00:00 2001 From: JG Date: Tue, 28 Jun 2022 10:55:15 +0100 Subject: [PATCH] small refactoring --- app/controllers/schemes_controller.rb | 32 ++++++++++++++------------- 1 file changed, 17 insertions(+), 15 deletions(-) diff --git a/app/controllers/schemes_controller.rb b/app/controllers/schemes_controller.rb index afc923b71..8f8fca5c1 100644 --- a/app/controllers/schemes_controller.rb +++ b/app/controllers/schemes_controller.rb @@ -52,20 +52,7 @@ class SchemesController < ApplicationController redirect_to scheme_check_answers_path(@scheme) end else - schemes_path = case params[:scheme][:page] - when "primary-client-group" - scheme_confirm_secondary_client_group_path(@scheme) - when "confirm-secondary" - @scheme.has_other_client_group == "Yes" ? scheme_secondary_client_group_path(@scheme) : scheme_support_path(@scheme) - when "secondary-client-group" - scheme_support_path(@scheme) - when "support" - scheme_check_answers_path(@scheme) - when "details" - scheme_primary_client_group_path(@scheme) - end - - redirect_to schemes_path + redirect_to derive_next_path params[:scheme][:page] end else render request.current_url, status: :unprocessable_entity @@ -98,7 +85,22 @@ class SchemesController < ApplicationController render "schemes/check_answers" end -private + private + + def derive_next_path page + case page + when "primary-client-group" + scheme_confirm_secondary_client_group_path(@scheme) + when "confirm-secondary" + @scheme.has_other_client_group == "Yes" ? scheme_secondary_client_group_path(@scheme) : scheme_support_path(@scheme) + when "secondary-client-group" + scheme_support_path(@scheme) + when "support" + scheme_check_answers_path(@scheme) + when "details" + scheme_primary_client_group_path(@scheme) + end + end def scheme_params required_params = params.require(:scheme).permit(:service_name, :sensitive, :organisation_id, :scheme_type, :registered_under_care_act, :total_units, :id, :has_other_client_group, :primary_client_group, :secondary_client_group, :support_type, :intended_stay)