Browse Source

Rename address autocomplete to address search

CLDC-3787-Autocomplete-address-search
Manny Dinssa 1 week ago
parent
commit
2ae3501f3f
  1. 26
      app/controllers/address_search_controller.rb
  2. 0
      app/frontend/controllers/address_search_controller.js
  3. 4
      app/frontend/controllers/index.js
  4. 6
      app/models/form/lettings/questions/address_search.rb
  5. 6
      app/models/form/sales/questions/address_search.rb
  6. 6
      app/views/form/_address_search_question.html.erb
  7. 2
      config/routes.rb

26
app/controllers/address_options_controller.rb → app/controllers/address_search_controller.rb

@ -1,4 +1,4 @@
class AddressOptionsController < ApplicationController
class AddressSearchController < ApplicationController
before_action :authenticate_user!
def index
@ -42,6 +42,18 @@ class AddressOptionsController < ApplicationController
end
end
def manual_input
log = params[:log_type] == "lettings" ? LettingsLog.find(params[:log_id]) : SalesLog.find(params[:log_id])
log.update!(uprn: nil, uprn_known: 0, uprn_confirmed: nil, address_search: nil)
redirect_to manual_address_link(log)
end
def search_input
log = params[:log_type] == "lettings" ? LettingsLog.find(params[:log_id]) : SalesLog.find(params[:log_id])
log.update!(uprn: nil, uprn_known: 0, uprn_confirmed: nil, address_search: nil, address_line1: nil, address_line2: nil, town_or_city: nil, county: nil, postcode_full: nil, is_la_inferred: false, pcode1: nil, pcode2: nil)
redirect_to search_address_link(log)
end
def current
log_id = params[:log_id]
sales_log = SalesLog.find_by(id: log_id)
@ -61,4 +73,16 @@ class AddressOptionsController < ApplicationController
render json: { stored_value: nil }
end
end
private
def manual_address_link(log)
base_url = send("#{log.log_type}_url", log)
"#{base_url}/address"
end
def search_address_link(log)
base_url = send("#{log.log_type}_url", log)
"#{base_url}/address-search"
end
end

0
app/frontend/controllers/address_autocomplete_controller.js → app/frontend/controllers/address_search_controller.js

4
app/frontend/controllers/index.js

@ -19,7 +19,7 @@ import FilterLayoutController from './filter_layout_controller.js'
import TabsController from './tabs_controller.js'
import AddressAutocompleteController from './address_autocomplete_controller'
import AddressSearchController from './address_search_controller.js'
application.register('accessible-autocomplete', AccessibleAutocompleteController)
application.register('conditional-filter', ConditionalFilterController)
@ -29,4 +29,4 @@ application.register('numeric-question', NumericQuestionController)
application.register('filter-layout', FilterLayoutController)
application.register('search', SearchController)
application.register('tabs', TabsController)
application.register('address-autocomplete', AddressAutocompleteController)
application.register('address-search', AddressSearchController)

6
app/models/form/lettings/questions/address_search.rb

@ -2,7 +2,7 @@ class Form::Lettings::Questions::AddressSearch < ::Form::Question
def initialize(id, hsh, page)
super
@id = "address_search"
@type = "address_autocomplete"
@type = "address_search"
@plain_label = true
@bottom_guidance_partial = "address_search"
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
@ -44,9 +44,5 @@ class Form::Lettings::Questions::AddressSearch < ::Form::Question
answer_options(log, user).transform_values { |value| value["value"] } || {}
end
# def hidden_in_check_answers?(log, _current_user = nil)
# (log.uprn_known == 1 || log.uprn_confirmed == 1)
# end
QUESTION_NUMBER_FROM_YEAR = { 2024 => 12, 2025 => 12 }.freeze
end

6
app/models/form/sales/questions/address_search.rb

@ -2,7 +2,7 @@ class Form::Sales::Questions::AddressSearch < ::Form::Question
def initialize(id, hsh, page)
super
@id = "address_search"
@type = "address_autocomplete"
@type = "address_search"
@plain_label = true
@bottom_guidance_partial = "address_search"
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
@ -44,9 +44,5 @@ class Form::Sales::Questions::AddressSearch < ::Form::Question
answer_options(log, user).transform_values { |value| value["value"] } || {}
end
# def hidden_in_check_answers?(log, _current_user = nil)
# (log.uprn_known == 1 || log.uprn_confirmed == 1)
# end
QUESTION_NUMBER_FROM_YEAR = { 2024 => 15, 2025 => 15 }.freeze
end

6
app/views/form/_address_autocomplete_question.html.erb → app/views/form/_address_search_question.html.erb

@ -4,8 +4,8 @@
<%= f.govuk_select(question.id.to_sym,
label: legend(question, page_header, conditional),
"data-controller": "address-autocomplete",
"data-info": { search_url: address_options_url }.to_json,
"data-controller": "address-search",
"data-info": { search_url: address_search_url }.to_json,
caption: caption(caption_text, page_header, conditional),
hint: { text: question.hint_text&.html_safe }) do %>
<% if answers.any? %>
@ -24,5 +24,5 @@
<%= render partial: "form/guidance/#{question.bottom_guidance_partial}" if question.bottom_guidance? %>
<div class="govuk-button-group">
<%= govuk_link_to "Enter the address manually instead" , manual_address_link(@log), class: "govuk-button govuk-button--secondary" %>
<%= govuk_link_to "Enter the address manually instead", address_manual_input_path(@log.log_type, @log.id), class: "govuk-button govuk-button--secondary" %>
</div>

2
config/routes.rb

@ -41,6 +41,8 @@ Rails.application.routes.draw do
get "/service-unavailable", to: "maintenance#service_unavailable"
get "/address_options", to: "address_options#index"
get "/address_options/current", to: "address_options#current"
get "/address_search", to: "address_search#index"
get "/address_search/current", to: "address_search#current"
get "collection-resources", to: "collection_resources#index"
get "/collection-resources/:log_type/:year/:resource_type/download", to: "collection_resources#download_mandatory_collection_resource", as: :download_mandatory_collection_resource

Loading…
Cancel
Save