From 0d571695585f1453307f195f4aeaee36ef20855f Mon Sep 17 00:00:00 2001 From: Richard Pattinson Date: Tue, 19 Sep 2023 20:50:52 +0100 Subject: [PATCH] Reformat support console questions to nest application_form_skip_work_history and reduced_evidence_accepted questions --- .../support_interface/regions_controller.rb | 4 +- app/models/region.rb | 37 +++++++++++++++++++ .../support_interface/regions/edit.html.erb | 31 +++++++--------- 3 files changed, 53 insertions(+), 19 deletions(-) diff --git a/app/controllers/support_interface/regions_controller.rb b/app/controllers/support_interface/regions_controller.rb index 3dbf23f6d2..af1015b3fd 100644 --- a/app/controllers/support_interface/regions_controller.rb +++ b/app/controllers/support_interface/regions_controller.rb @@ -32,10 +32,10 @@ def load_region def region_params params.require(:region).permit( - :application_form_skip_work_history, + :all_sections_necessary, + :work_history_section_to_omit, :other_information, :qualifications_information, - :reduced_evidence_accepted, :requires_preliminary_check, :sanction_check, :sanction_information, diff --git a/app/models/region.rb b/app/models/region.rb index bfe3e0d7e6..ac39814e3b 100644 --- a/app/models/region.rb +++ b/app/models/region.rb @@ -86,4 +86,41 @@ def teaching_authority_present? teaching_authority_name.present? || teaching_authority_address.present? || teaching_authority_emails.present? || teaching_authority_websites.present? end + + def all_sections_necessary + !application_form_skip_work_history && !reduced_evidence_accepted + end + + def all_sections_necessary=(value) + application_form_skip_work_history_will_change! + reduced_evidence_accepted_will_change! + + if value + self.application_form_skip_work_history = false + self.reduced_evidence_accepted = false + end + end + + def work_history_section_to_omit + if application_form_skip_work_history + "whole_section" + elsif reduced_evidence_accepted + "contact_details" + end + end + + def work_history_section_to_omit=(value) + return if all_sections_necessary + application_form_skip_work_history_will_change! + reduced_evidence_accepted_will_change! + + case value + when "whole_section" + self.application_form_skip_work_history = true + self.reduced_evidence_accepted = false + when "contact_details" + self.application_form_skip_work_history = false + self.reduced_evidence_accepted = true + end + end end diff --git a/app/views/support_interface/regions/edit.html.erb b/app/views/support_interface/regions/edit.html.erb index 1939e61461..7a098ec1ca 100644 --- a/app/views/support_interface/regions/edit.html.erb +++ b/app/views/support_interface/regions/edit.html.erb @@ -15,24 +15,21 @@ legend: { text: "Will applications be subject to a preliminary check?" } %> <%= f.govuk_fieldset legend: { text: "Application form changes" } do %> - <%= f.govuk_collection_radio_buttons :application_form_skip_work_history, - [ - OpenStruct.new(value: :true, label: "Yes"), - OpenStruct.new(value: :false, label: "No") - ], - :value, - :label, - legend: { text: "Remove work history?", size: "s" } %> - <%= f.govuk_collection_radio_buttons :reduced_evidence_accepted, - [ - OpenStruct.new(value: :true, label: "Yes"), - OpenStruct.new(value: :false, label: "No") - ], - :value, - :label, - legend: { text: "Remove work history contact details and allow applicant to choose any SELT provider to prove their English proficiency?", size: "s" }, - hint: { text: "Allows QTS to be awarded without any work references being provided." } %> + <%= f.govuk_radio_buttons_fieldset(:all_sections_necessary, legend: { size: 's', text: 'Do applicants need to complete all sections of the application form?' }) do %> + <%= f.govuk_radio_button :all_sections_necessary, :true, label: { text: 'Yes' }, link_errors: true %> + <%= f.govuk_radio_button :all_sections_necessary, :false, label: { text: 'No' } do %> + <%= f.govuk_collection_select :work_history_section_to_omit, + [ + OpenStruct.new(id: "whole_section", name: "Work history (whole section)"), + OpenStruct.new(id: "contact_details", name: "Work history contact details (allows QTS to be awarded without any work references being provided) and allow applicant to choose any SELT provider to prove their English proficiency."), + ], + :id, + :name, + label: { text: "Which sections will be removed?", size: "s" } %> + + <% end %> + <% end %> <%= f.govuk_collection_radio_buttons :written_statement_optional, [