From 302a2e47575da031cb3692873ae3fb7abaea5dab Mon Sep 17 00:00:00 2001 From: Manny Dinssa <44172848+Dinssa@users.noreply.github.com> Date: Tue, 4 Feb 2025 13:33:36 +0000 Subject: [PATCH] Add buttons to switch between address questions --- app/controllers/address_search_controller.rb | 20 ------------------- app/helpers/form_page_helper.rb | 5 ----- .../lettings_log_variables.rb | 2 -- .../derived_variables/sales_log_variables.rb | 2 -- .../form/lettings/pages/address_search.rb | 8 +++----- app/models/form/sales/pages/address_search.rb | 8 +++----- .../form/sales/pages/no_address_found.rb | 1 - app/models/log.rb | 4 ++++ app/views/form/page.html.erb | 6 ++++++ config/routes.rb | 4 ++-- 10 files changed, 18 insertions(+), 42 deletions(-) diff --git a/app/controllers/address_search_controller.rb b/app/controllers/address_search_controller.rb index c34abb843..9a7fe1ea4 100644 --- a/app/controllers/address_search_controller.rb +++ b/app/controllers/address_search_controller.rb @@ -54,26 +54,6 @@ class AddressSearchController < ApplicationController redirect_to search_address_link(log) end - def current - log_id = params[:log_id] - sales_log = SalesLog.find_by(id: log_id) - uprn = sales_log&.address_search - - if uprn.present? - service = UprnClient.new(uprn) - service.call - - if service.error.present? - render json: { error: service.error }, status: :unprocessable_entity - else - address = service.result.find { |result| result["UPRN"] == uprn }&.dig("ADDRESS") - render json: { stored_value: { uprn:, address: } } - end - else - render json: { stored_value: nil } - end - end - private def manual_address_link(log) diff --git a/app/helpers/form_page_helper.rb b/app/helpers/form_page_helper.rb index 6e34bd8a6..74e75e572 100644 --- a/app/helpers/form_page_helper.rb +++ b/app/helpers/form_page_helper.rb @@ -46,9 +46,4 @@ module FormPageHelper page.skip_href(log) || send(log.form.next_page_redirect_path(page, log, current_user, ignore_answered: true), log) end end - - def manual_address_link(log) - base_url = send("#{log.log_type}_url", log) - "#{base_url}/address" - end end diff --git a/app/models/derived_variables/lettings_log_variables.rb b/app/models/derived_variables/lettings_log_variables.rb index a5d03eb5b..817019d9e 100644 --- a/app/models/derived_variables/lettings_log_variables.rb +++ b/app/models/derived_variables/lettings_log_variables.rb @@ -97,7 +97,6 @@ module DerivedVariables::LettingsLogVariables self.la = nil self.address_line1_input = nil self.postcode_full_input = nil - self.address_search = nil end end @@ -113,7 +112,6 @@ module DerivedVariables::LettingsLogVariables self.postcode_full = nil self.la = nil self.previous_la_known = nil if is_renewal? - self.address_search = nil end if address_search diff --git a/app/models/derived_variables/sales_log_variables.rb b/app/models/derived_variables/sales_log_variables.rb index 2a54b7116..9bbc28841 100644 --- a/app/models/derived_variables/sales_log_variables.rb +++ b/app/models/derived_variables/sales_log_variables.rb @@ -63,7 +63,6 @@ module DerivedVariables::SalesLogVariables self.la = nil self.address_line1_input = nil self.postcode_full_input = nil - self.address_search = nil end end @@ -80,7 +79,6 @@ module DerivedVariables::SalesLogVariables self.la = nil self.address_line1_input = nil self.postcode_full_input = nil - self.address_search = nil end if address_search diff --git a/app/models/form/lettings/pages/address_search.rb b/app/models/form/lettings/pages/address_search.rb index 38ea0c1fe..e7c85c282 100644 --- a/app/models/form/lettings/pages/address_search.rb +++ b/app/models/form/lettings/pages/address_search.rb @@ -2,11 +2,9 @@ class Form::Lettings::Pages::AddressSearch < ::Form::Page def initialize(id, hsh, subsection) super @id = "address_search" - # @depends_on = [ - # { "uprn_known" => nil }, - # { "uprn_known" => 0 }, - # { "uprn_confirmed" => 0 }, - # ] + @depends_on = [ + { "address_manually_entered?" => false }, + ] end def questions diff --git a/app/models/form/sales/pages/address_search.rb b/app/models/form/sales/pages/address_search.rb index be756028c..cc627292e 100644 --- a/app/models/form/sales/pages/address_search.rb +++ b/app/models/form/sales/pages/address_search.rb @@ -2,11 +2,9 @@ class Form::Sales::Pages::AddressSearch < ::Form::Page def initialize(id, hsh, subsection) super @id = "address_search" - # @depends_on = [ - # { "uprn_known" => nil }, - # { "uprn_known" => 0 }, - # { "uprn_confirmed" => 0 }, - # ] + @depends_on = [ + { "address_manually_entered?" => false }, + ] end def questions diff --git a/app/models/form/sales/pages/no_address_found.rb b/app/models/form/sales/pages/no_address_found.rb index ae2663896..e0ff5bcb2 100644 --- a/app/models/form/sales/pages/no_address_found.rb +++ b/app/models/form/sales/pages/no_address_found.rb @@ -16,7 +16,6 @@ class Form::Sales::Pages::NoAddressFound < ::Form::Page { "uprn_known" => nil, "address_options_present?" => false }, { "uprn_known" => 0, "address_options_present?" => false }, { "uprn_confirmed" => 0, "address_options_present?" => false }, - ] end diff --git a/app/models/log.rb b/app/models/log.rb index 3123a604e..b31166f40 100644 --- a/app/models/log.rb +++ b/app/models/log.rb @@ -180,6 +180,10 @@ class Log < ApplicationRecord ethnic_group == 17 end + def address_manually_entered? + uprn.nil? && address_search.nil? && address_line1.present? && town_or_city.present? + end + def collection_period_open? return false if older_than_previous_collection_year? diff --git a/app/views/form/page.html.erb b/app/views/form/page.html.erb index 1d4f0e7a1..6d74fadea 100644 --- a/app/views/form/page.html.erb +++ b/app/views/form/page.html.erb @@ -75,6 +75,12 @@ <%= f.hidden_field :check_errors, value: @check_errors %> <% end %> + <% if @page.id == "address" %> +
+ <% end %> + <% if @pages_with_errors_count > 1 %>