Browse Source

Merge branch 'main' into CLDC-3860-Bulk-upload-prevent-reasonpref-dontknow-being-selected

CLDC-3860-Bulk-upload-prevent-reasonpref-dontknow-being-selected
Manny Dinssa 6 days ago
parent
commit
8c46ee239d
  1. 2
      .ruby-version
  2. 4
      Dockerfile
  3. 2
      Gemfile
  4. 2
      Gemfile.lock
  5. 100
      app/helpers/bulk_upload/sales_log_to_csv.rb
  6. 2
      app/models/form/lettings/pages/address_fallback.rb
  7. 2
      app/models/form/lettings/questions/address_line1.rb
  8. 2
      app/models/form/lettings/questions/brent_4_weekly.rb
  9. 2
      app/models/form/lettings/questions/brent_bi_weekly.rb
  10. 2
      app/models/form/lettings/questions/brent_monthly.rb
  11. 2
      app/models/form/lettings/questions/brent_weekly.rb
  12. 2
      app/models/form/lettings/questions/county.rb
  13. 2
      app/models/form/lettings/questions/first_time_property_let_as_social_housing.rb
  14. 2
      app/models/form/lettings/questions/hbrentshortfall.rb
  15. 2
      app/models/form/lettings/questions/joint.rb
  16. 2
      app/models/form/lettings/questions/la.rb
  17. 2
      app/models/form/lettings/questions/postcode_for_full_address.rb
  18. 2
      app/models/form/lettings/questions/previous_let_type.rb
  19. 2
      app/models/form/lettings/questions/pscharge_4_weekly.rb
  20. 2
      app/models/form/lettings/questions/pscharge_bi_weekly.rb
  21. 2
      app/models/form/lettings/questions/pscharge_monthly.rb
  22. 2
      app/models/form/lettings/questions/pscharge_weekly.rb
  23. 2
      app/models/form/lettings/questions/rsnvac.rb
  24. 2
      app/models/form/lettings/questions/rsnvac_first_let.rb
  25. 2
      app/models/form/lettings/questions/scharge_4_weekly.rb
  26. 2
      app/models/form/lettings/questions/scharge_bi_weekly.rb
  27. 2
      app/models/form/lettings/questions/scharge_monthly.rb
  28. 2
      app/models/form/lettings/questions/scharge_weekly.rb
  29. 2
      app/models/form/lettings/questions/sheltered.rb
  30. 2
      app/models/form/lettings/questions/starter_tenancy_type.rb
  31. 2
      app/models/form/lettings/questions/startertenancy.rb
  32. 2
      app/models/form/lettings/questions/supcharg_4_weekly.rb
  33. 2
      app/models/form/lettings/questions/supcharg_bi_weekly.rb
  34. 2
      app/models/form/lettings/questions/supcharg_monthly.rb
  35. 2
      app/models/form/lettings/questions/supcharg_weekly.rb
  36. 2
      app/models/form/lettings/questions/tenancy_length.rb
  37. 2
      app/models/form/lettings/questions/tenancy_length_affordable_rent.rb
  38. 2
      app/models/form/lettings/questions/tenancy_length_intermediate_rent.rb
  39. 2
      app/models/form/lettings/questions/tenancy_length_periodic.rb
  40. 2
      app/models/form/lettings/questions/tenancy_other.rb
  41. 2
      app/models/form/lettings/questions/tenancy_type.rb
  42. 2
      app/models/form/lettings/questions/town_or_city.rb
  43. 2
      app/models/form/lettings/questions/tshortfall.rb
  44. 2
      app/models/form/lettings/questions/tshortfall_known.rb
  45. 2
      app/models/form/lettings/questions/uprn.rb
  46. 2
      app/models/form/lettings/questions/uprn_known.rb
  47. 2
      app/models/form/sales/pages/address.rb
  48. 2
      app/models/form/sales/questions/address_line1.rb
  49. 2
      app/models/form/sales/questions/age1.rb
  50. 2
      app/models/form/sales/questions/age2.rb
  51. 2
      app/models/form/sales/questions/armed_forces.rb
  52. 2
      app/models/form/sales/questions/armed_forces_spouse.rb
  53. 2
      app/models/form/sales/questions/buyer1_age_known.rb
  54. 2
      app/models/form/sales/questions/buyer1_ethnic_background_arab.rb
  55. 2
      app/models/form/sales/questions/buyer1_ethnic_background_asian.rb
  56. 2
      app/models/form/sales/questions/buyer1_ethnic_background_black.rb
  57. 2
      app/models/form/sales/questions/buyer1_ethnic_background_mixed.rb
  58. 2
      app/models/form/sales/questions/buyer1_ethnic_background_white.rb
  59. 2
      app/models/form/sales/questions/buyer1_ethnic_group.rb
  60. 2
      app/models/form/sales/questions/buyer1_income.rb
  61. 2
      app/models/form/sales/questions/buyer1_income_known.rb
  62. 2
      app/models/form/sales/questions/buyer1_live_in_property.rb
  63. 2
      app/models/form/sales/questions/buyer1_mortgage.rb
  64. 2
      app/models/form/sales/questions/buyer1_nationality.rb
  65. 2
      app/models/form/sales/questions/buyer1_previous_tenure.rb
  66. 2
      app/models/form/sales/questions/buyer1_working_situation.rb
  67. 2
      app/models/form/sales/questions/buyer2_age_known.rb
  68. 2
      app/models/form/sales/questions/buyer2_ethnic_background_arab.rb
  69. 2
      app/models/form/sales/questions/buyer2_ethnic_background_asian.rb
  70. 2
      app/models/form/sales/questions/buyer2_ethnic_background_black.rb
  71. 2
      app/models/form/sales/questions/buyer2_ethnic_background_mixed.rb
  72. 2
      app/models/form/sales/questions/buyer2_ethnic_background_white.rb
  73. 2
      app/models/form/sales/questions/buyer2_ethnic_group.rb
  74. 2
      app/models/form/sales/questions/buyer2_income.rb
  75. 2
      app/models/form/sales/questions/buyer2_income_known.rb
  76. 2
      app/models/form/sales/questions/buyer2_live_in_property.rb
  77. 2
      app/models/form/sales/questions/buyer2_living_in.rb
  78. 2
      app/models/form/sales/questions/buyer2_mortgage.rb
  79. 2
      app/models/form/sales/questions/buyer2_nationality.rb
  80. 2
      app/models/form/sales/questions/buyer2_relationship_to_buyer1.rb
  81. 2
      app/models/form/sales/questions/buyer2_relationship_to_buyer1_yes_no.rb
  82. 2
      app/models/form/sales/questions/buyer2_working_situation.rb
  83. 2
      app/models/form/sales/questions/buyer_interview.rb
  84. 2
      app/models/form/sales/questions/buyer_still_serving.rb
  85. 2
      app/models/form/sales/questions/county.rb
  86. 1
      app/models/form/sales/questions/deposit_amount.rb
  87. 2
      app/models/form/sales/questions/deposit_discount.rb
  88. 2
      app/models/form/sales/questions/discount.rb
  89. 2
      app/models/form/sales/questions/discounted_ownership_type.rb
  90. 6
      app/models/form/sales/questions/equity.rb
  91. 1
      app/models/form/sales/questions/extra_borrowing.rb
  92. 2
      app/models/form/sales/questions/fromprop.rb
  93. 2
      app/models/form/sales/questions/gender_identity1.rb
  94. 2
      app/models/form/sales/questions/gender_identity2.rb
  95. 2
      app/models/form/sales/questions/grant.rb
  96. 2
      app/models/form/sales/questions/handover_date.rb
  97. 16
      app/models/form/sales/questions/has_leasehold_charges.rb
  98. 3
      app/models/form/sales/questions/has_management_fee.rb
  99. 2
      app/models/form/sales/questions/household_disability.rb
  100. 2
      app/models/form/sales/questions/household_wheelchair.rb
  101. Some files were not shown because too many files have changed in this diff Show More

2
.ruby-version

@ -1 +1 @@
3.1.4
3.1.6

4
Dockerfile

@ -1,4 +1,4 @@
FROM ruby:3.1.4-alpine3.18 as base
FROM ruby:3.1.6-alpine3.20 as base
WORKDIR /app
@ -10,7 +10,7 @@ RUN apk add --update --no-cache tzdata && \
# build-base: compilation tools for bundle
# yarn: node package manager
# postgresql-dev: postgres driver and libraries
RUN apk add --no-cache build-base=0.5-r3 busybox=1.36.1-r7 nodejs-current=20.8.1-r0 yarn=1.22.19-r0 postgresql13-dev=13.18-r0 bash=5.2.15-r5
RUN apk add --no-cache build-base=0.5-r3 busybox=1.36.1-r29 nodejs=20.15.1-r0 yarn=1.22.22-r0 bash=5.2.26-r0 libpq-dev
# Bundler version should be the same version as what the Gemfile.lock was bundled with
RUN gem install bundler:2.6.4 --no-document

2
Gemfile

@ -3,7 +3,7 @@
source "https://rubygems.org"
git_source(:github) { |repo| "https://github.com/#{repo}.git" }
ruby "3.1.4"
ruby "3.1.6"
# Bundle edge Rails instead: gem 'rails', github: 'rails/rails', branch: 'main'
gem "rails", "~> 7.2.2"

2
Gemfile.lock

@ -606,7 +606,7 @@ DEPENDENCIES
webmock
RUBY VERSION
ruby 3.1.4p223
ruby 3.1.6p260
BUNDLED WITH
2.6.4

100
app/helpers/bulk_upload/sales_log_to_csv.rb

@ -18,11 +18,9 @@ class BulkUpload::SalesLogToCsv
year = log.collection_start_year
case year
when 2022
to_2022_csv_row(seed:)
when 2023
to_2023_csv_row(seed:)
when 2024
to_2024_csv_row(seed:)
to_2022_csv_row
when 2023, 2024
to_year_csv_row(year, seed:)
else
raise NotImplementedError "No mapping function implemented for year #{year}"
end
@ -30,93 +28,55 @@ class BulkUpload::SalesLogToCsv
def to_row
year = log.collection_start_year
case year
when 2022
to_2022_row
when 2023
to_2023_row
when 2024
to_2024_row
else
raise NotImplementedError "No mapping function implemented for year #{year}"
end
send("to_#{year}_row")
rescue NoMethodError
raise NotImplementedError "No mapping function implemented for year #{year}"
end
def default_field_numbers_row(seed: nil)
year = log.collection_start_year
case year
when 2022
default_2022_field_numbers_row(seed:)
when 2023
default_2023_field_numbers_row(seed:)
when 2024
default_2024_field_numbers_row(seed:)
else
raise NotImplementedError "No mapping function implemented for year #{year}"
end
default_field_numbers_row_for_year(year, seed:)
end
def default_field_numbers
year = log.collection_start_year
case year
when 2022
default_2022_field_numbers
when 2023
default_2023_field_numbers
when 2024
default_2024_field_numbers
else
raise NotImplementedError "No mapping function implemented for year #{year}"
end
default_field_numbers_for_year(year)
end
def to_2022_csv_row
(row_prefix + to_2022_row).flatten.join(",") + line_ending
end
def to_2023_csv_row(seed: nil)
def to_year_csv_row(year, seed: nil)
unshuffled_row = send("to_#{year}_row")
if seed
row = to_2023_row.shuffle(random: Random.new(seed))
row = unshuffled_row.shuffle(random: Random.new(seed))
(row_prefix + row).flatten.join(",") + line_ending
else
(row_prefix + to_2023_row).flatten.join(",") + line_ending
(row_prefix + unshuffled_row).flatten.join(",") + line_ending
end
rescue NoMethodError
raise NotImplementedError "No mapping function implemented for year #{year}"
end
def to_2024_csv_row(seed: nil)
if seed
row = to_2024_row.shuffle(random: Random.new(seed))
(row_prefix + row).flatten.join(",") + line_ending
def default_field_numbers_for_year(year)
case year
when 2022
(1..125).to_a
when 2023
[6, 3, 4, 5, nil, 28, 30, 38, 47, 51, 55, 59, 31, 39, 48, 52, 56, 60, 37, 46, 50, 54, 58, 35, 43, 49, 53, 57, 61, 32, 33, 78, 80, 79, 81, 83, 84, nil, 62, 66, 64, 65, 63, 67, 69, 70, 68, 76, 77, 16, 17, 18, 26, 24, 25, 27, 8, 91, 95, 96, 97, 92, 93, 94, 98, 100, 101, 103, 104, 106, 110, 111, 112, 113, 114, 9, 116, 117, 118, 120, 124, 125, 126, 10, 11, nil, 127, 129, 133, 134, 135, 1, 2, nil, 73, nil, 75, 107, 108, 121, 122, 130, 131, 82, 109, 123, 132, 115, 15, 86, 87, 29, 7, 12, 13, 14, 36, 44, 45, 88, 89, 102, 105, 119, 128, 19, 20, 21, 22, 23, 34, 40, 41, 42, 71, 72, 74, 85, 90, 99]
when 2024
(1..131).to_a
else
(row_prefix + to_2024_row).flatten.join(",") + line_ending
raise NotImplementedError "No mapping function implemented for year #{year}"
end
end
def default_2022_field_numbers
(1..125).to_a
end
def default_2022_field_numbers_row(seed: nil)
def default_field_numbers_row_for_year(year, seed: nil)
if seed
["Field number"] + default_2022_field_numbers.shuffle(random: Random.new(seed))
["Field number"] + default_field_numbers_for_year(year).shuffle(random: Random.new(seed))
else
["Field number"] + default_2022_field_numbers
end.flatten.join(",") + line_ending
end
def default_2023_field_numbers_row(seed: nil)
if seed
["Field number"] + default_2023_field_numbers.shuffle(random: Random.new(seed))
else
["Field number"] + default_2023_field_numbers
end.flatten.join(",") + line_ending
end
def default_2024_field_numbers_row(seed: nil)
if seed
["Field number"] + default_2024_field_numbers.shuffle(random: Random.new(seed))
else
["Field number"] + default_2024_field_numbers
["Field number"] + default_field_numbers_for_year(year)
end.flatten.join(",") + line_ending
end
@ -435,10 +395,6 @@ class BulkUpload::SalesLogToCsv
]
end
def default_2023_field_numbers
[6, 3, 4, 5, nil, 28, 30, 38, 47, 51, 55, 59, 31, 39, 48, 52, 56, 60, 37, 46, 50, 54, 58, 35, 43, 49, 53, 57, 61, 32, 33, 78, 80, 79, 81, 83, 84, nil, 62, 66, 64, 65, 63, 67, 69, 70, 68, 76, 77, 16, 17, 18, 26, 24, 25, 27, 8, 91, 95, 96, 97, 92, 93, 94, 98, 100, 101, 103, 104, 106, 110, 111, 112, 113, 114, 9, 116, 117, 118, 120, 124, 125, 126, 10, 11, nil, 127, 129, 133, 134, 135, 1, 2, nil, 73, nil, 75, 107, 108, 121, 122, 130, 131, 82, 109, 123, 132, 115, 15, 86, 87, 29, 7, 12, 13, 14, 36, 44, 45, 88, 89, 102, 105, 119, 128, 19, 20, 21, 22, 23, 34, 40, 41, 42, 71, 72, 74, 85, 90, 99]
end
def custom_field_numbers_row(seed: nil, field_numbers: nil)
if seed
["Field number"] + field_numbers.shuffle(random: Random.new(seed))
@ -452,10 +408,6 @@ class BulkUpload::SalesLogToCsv
(row_prefix + row).flatten.join(",") + line_ending
end
def default_2024_field_numbers
(1..131).to_a
end
private
def hhregres

2
app/models/form/lettings/pages/address_fallback.rb

@ -24,5 +24,5 @@ class Form::Lettings::Pages::AddressFallback < ::Form::Page
]
end
QUESTION_NUMBER_FROM_YEAR = { 2024 => 13, 2025 => 13 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2024 => 13, 2025 => 17 }.freeze
end

2
app/models/form/lettings/questions/address_line1.rb

@ -18,5 +18,5 @@ class Form::Lettings::Questions::AddressLine1 < ::Form::Question
].select(&:present?).join("\n")
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 12, 2024 => 13 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 12, 2024 => 13, 2025 => 17 }.freeze
end

2
app/models/form/lettings/questions/brent_4_weekly.rb

@ -15,5 +15,5 @@ class Form::Lettings::Questions::Brent4Weekly < ::Form::Question
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 95, 2024 => 94 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 95, 2024 => 94, 2025 => 92 }.freeze
end

2
app/models/form/lettings/questions/brent_bi_weekly.rb

@ -15,5 +15,5 @@ class Form::Lettings::Questions::BrentBiWeekly < ::Form::Question
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 95, 2024 => 94 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 95, 2024 => 94, 2025 => 92 }.freeze
end

2
app/models/form/lettings/questions/brent_monthly.rb

@ -15,5 +15,5 @@ class Form::Lettings::Questions::BrentMonthly < ::Form::Question
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 95, 2024 => 94 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 95, 2024 => 94, 2025 => 92 }.freeze
end

2
app/models/form/lettings/questions/brent_weekly.rb

@ -15,5 +15,5 @@ class Form::Lettings::Questions::BrentWeekly < ::Form::Question
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 95, 2024 => 94 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 95, 2024 => 94, 2025 => 92 }.freeze
end

2
app/models/form/lettings/questions/county.rb

@ -10,5 +10,5 @@ class Form::Lettings::Questions::County < ::Form::Question
@hide_question_number_on_page = true
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 12, 2024 => 13 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 12, 2024 => 13, 2025 => 17 }.freeze
end

2
app/models/form/lettings/questions/first_time_property_let_as_social_housing.rb

@ -22,5 +22,5 @@ class Form::Lettings::Questions::FirstTimePropertyLetAsSocialHousing < ::Form::Q
form.start_year_2024_or_later? ? "This is a re-let of existing social housing stock." : "This is a re-let of existing social housing."
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 14, 2024 => 15 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 14, 2024 => 15, 2025 => 12 }.freeze
end

2
app/models/form/lettings/questions/hbrentshortfall.rb

@ -14,5 +14,5 @@ class Form::Lettings::Questions::Hbrentshortfall < ::Form::Question
"3" => { "value" => "Don’t know" },
}.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 99, 2024 => 98 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 99, 2024 => 98, 2025 => 96 }.freeze
end

2
app/models/form/lettings/questions/joint.rb

@ -15,5 +15,5 @@ class Form::Lettings::Questions::Joint < ::Form::Question
"3" => { "value" => "Don’t know" },
}.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 25 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 25, 2024 => 25, 2025 => 26 }.freeze
end

2
app/models/form/lettings/questions/la.rb

@ -13,5 +13,5 @@ class Form::Lettings::Questions::La < ::Form::Question
{ "" => "Select an option" }.merge(LocalAuthority.active(form.start_date).england.map { |la| [la.code, la.name] }.to_h)
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 13, 2024 => 14 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 13, 2024 => 14, 2025 => 18 }.freeze
end

2
app/models/form/lettings/questions/postcode_for_full_address.rb

@ -22,5 +22,5 @@ class Form::Lettings::Questions::PostcodeForFullAddress < ::Form::Question
@hide_question_number_on_page = true
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 12, 2024 => 13 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 12, 2024 => 13, 2025 => 17 }.freeze
end

2
app/models/form/lettings/questions/previous_let_type.rb

@ -42,7 +42,7 @@ class Form::Lettings::Questions::PreviousLetType < ::Form::Question
"3" => { "value" => "Don’t know" },
}.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 16, 2024 => 17 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 16, 2024 => 17, 2025 => 14 }.freeze
def answer_options
return ANSWER_OPTIONS_AFTER_2025 if form.start_year_2025_or_later?

2
app/models/form/lettings/questions/pscharge_4_weekly.rb

@ -15,5 +15,5 @@ class Form::Lettings::Questions::Pscharge4Weekly < ::Form::Question
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 97, 2024 => 96 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 97, 2024 => 96, 2025 => 94 }.freeze
end

2
app/models/form/lettings/questions/pscharge_bi_weekly.rb

@ -15,5 +15,5 @@ class Form::Lettings::Questions::PschargeBiWeekly < ::Form::Question
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 97, 2024 => 96 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 97, 2024 => 96, 2025 => 94 }.freeze
end

2
app/models/form/lettings/questions/pscharge_monthly.rb

@ -15,5 +15,5 @@ class Form::Lettings::Questions::PschargeMonthly < ::Form::Question
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 97, 2024 => 96 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 97, 2024 => 96, 2025 => 94 }.freeze
end

2
app/models/form/lettings/questions/pscharge_weekly.rb

@ -15,5 +15,5 @@ class Form::Lettings::Questions::PschargeWeekly < ::Form::Question
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 97, 2024 => 96 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 97, 2024 => 96, 2025 => 94 }.freeze
end

2
app/models/form/lettings/questions/rsnvac.rb

@ -99,5 +99,5 @@ class Form::Lettings::Questions::Rsnvac < ::Form::Question
end
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 17, 2024 => 18 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 17, 2024 => 18, 2025 => 15 }.freeze
end

2
app/models/form/lettings/questions/rsnvac_first_let.rb

@ -14,5 +14,5 @@ class Form::Lettings::Questions::RsnvacFirstLet < ::Form::Question
"15" => { "value" => "First let of new-build property" },
}.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 15, 2024 => 16 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 15, 2024 => 16, 2025 => 13 }.freeze
end

2
app/models/form/lettings/questions/scharge_4_weekly.rb

@ -15,5 +15,5 @@ class Form::Lettings::Questions::Scharge4Weekly < ::Form::Question
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 96, 2024 => 95 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 96, 2024 => 95, 2025 => 93 }.freeze
end

2
app/models/form/lettings/questions/scharge_bi_weekly.rb

@ -15,5 +15,5 @@ class Form::Lettings::Questions::SchargeBiWeekly < ::Form::Question
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 96, 2024 => 95 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 96, 2024 => 95, 2025 => 93 }.freeze
end

2
app/models/form/lettings/questions/scharge_monthly.rb

@ -15,5 +15,5 @@ class Form::Lettings::Questions::SchargeMonthly < ::Form::Question
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 96, 2024 => 95 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 96, 2024 => 95, 2025 => 93 }.freeze
end

2
app/models/form/lettings/questions/scharge_weekly.rb

@ -15,5 +15,5 @@ class Form::Lettings::Questions::SchargeWeekly < ::Form::Question
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 96, 2024 => 95 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 96, 2024 => 95, 2025 => 93 }.freeze
end

2
app/models/form/lettings/questions/sheltered.rb

@ -28,5 +28,5 @@ class Form::Lettings::Questions::Sheltered < ::Form::Question
end
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 29 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 29, 2024 => 29, 2025 => 25 }.freeze
end

2
app/models/form/lettings/questions/starter_tenancy_type.rb

@ -65,5 +65,5 @@ class Form::Lettings::Questions::StarterTenancyType < ::Form::Question
end
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 27 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 27, 2024 => 27, 2025 => 28 }.freeze
end

2
app/models/form/lettings/questions/startertenancy.rb

@ -10,5 +10,5 @@ class Form::Lettings::Questions::Startertenancy < ::Form::Question
ANSWER_OPTIONS = { "1" => { "value" => "Yes" }, "2" => { "value" => "No" } }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 26 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 26, 2024 => 26, 2025 => 27 }.freeze
end

2
app/models/form/lettings/questions/supcharg_4_weekly.rb

@ -15,5 +15,5 @@ class Form::Lettings::Questions::Supcharg4Weekly < ::Form::Question
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 98, 2024 => 97 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 98, 2024 => 97, 2025 => 95 }.freeze
end

2
app/models/form/lettings/questions/supcharg_bi_weekly.rb

@ -15,5 +15,5 @@ class Form::Lettings::Questions::SupchargBiWeekly < ::Form::Question
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 98, 2024 => 97 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 98, 2024 => 97, 2025 => 95 }.freeze
end

2
app/models/form/lettings/questions/supcharg_monthly.rb

@ -15,5 +15,5 @@ class Form::Lettings::Questions::SupchargMonthly < ::Form::Question
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 98, 2024 => 97 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 98, 2024 => 97, 2025 => 95 }.freeze
end

2
app/models/form/lettings/questions/supcharg_weekly.rb

@ -15,5 +15,5 @@ class Form::Lettings::Questions::SupchargWeekly < ::Form::Question
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 98, 2024 => 97 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 98, 2024 => 97, 2025 => 95 }.freeze
end

2
app/models/form/lettings/questions/tenancy_length.rb

@ -12,5 +12,5 @@ class Form::Lettings::Questions::TenancyLength < ::Form::Question
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 28 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 28, 2024 => 28, 2025 => 29 }.freeze
end

2
app/models/form/lettings/questions/tenancy_length_affordable_rent.rb

@ -12,5 +12,5 @@ class Form::Lettings::Questions::TenancyLengthAffordableRent < ::Form::Question
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 28 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 28, 2024 => 28, 2025 => 29 }.freeze
end

2
app/models/form/lettings/questions/tenancy_length_intermediate_rent.rb

@ -12,5 +12,5 @@ class Form::Lettings::Questions::TenancyLengthIntermediateRent < ::Form::Questio
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 28 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 28, 2024 => 28, 2025 => 29 }.freeze
end

2
app/models/form/lettings/questions/tenancy_length_periodic.rb

@ -12,5 +12,5 @@ class Form::Lettings::Questions::TenancyLengthPeriodic < ::Form::Question
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 28 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 28, 2024 => 28, 2025 => 29 }.freeze
end

2
app/models/form/lettings/questions/tenancy_other.rb

@ -8,5 +8,5 @@ class Form::Lettings::Questions::TenancyOther < ::Form::Question
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 27 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 27, 2024 => 27, 2025 => 28 }.freeze
end

2
app/models/form/lettings/questions/tenancy_type.rb

@ -65,5 +65,5 @@ class Form::Lettings::Questions::TenancyType < ::Form::Question
end
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 27 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 27, 2024 => 27, 2025 => 28 }.freeze
end

2
app/models/form/lettings/questions/town_or_city.rb

@ -10,5 +10,5 @@ class Form::Lettings::Questions::TownOrCity < ::Form::Question
@hide_question_number_on_page = true
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 12, 2024 => 13 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 12, 2024 => 13, 2025 => 17 }.freeze
end

2
app/models/form/lettings/questions/tshortfall.rb

@ -24,5 +24,5 @@ class Form::Lettings::Questions::Tshortfall < ::Form::Question
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 100, 2024 => 99 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 100, 2024 => 99, 2025 => 97 }.freeze
end

2
app/models/form/lettings/questions/tshortfall_known.rb

@ -12,5 +12,5 @@ class Form::Lettings::Questions::TshortfallKnown < ::Form::Question
ANSWER_OPTIONS = { "0" => { "value" => "Yes" }, "1" => { "value" => "No" } }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 100, 2024 => 99 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 100, 2024 => 99, 2025 => 97 }.freeze
end

2
app/models/form/lettings/questions/uprn.rb

@ -35,5 +35,5 @@ class Form::Lettings::Questions::Uprn < ::Form::Question
"\n\n#{value.join("\n")}"
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 11, 2024 => 12 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 11, 2024 => 12, 2025 => 16 }.freeze
end

2
app/models/form/lettings/questions/uprn_known.rb

@ -30,5 +30,5 @@ class Form::Lettings::Questions::UprnKnown < ::Form::Question
I18n.t("validations.property.uprn_known.invalid")
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 11, 2024 => 12 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 11, 2024 => 12, 2025 => 16 }.freeze
end

2
app/models/form/sales/pages/address.rb

@ -20,5 +20,5 @@ class Form::Sales::Pages::Address < ::Form::Page
]
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 15, 2024 => 16 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 15, 2024 => 16, 2025 => 14 }.freeze
end

2
app/models/form/sales/questions/address_line1.rb

@ -18,5 +18,5 @@ class Form::Sales::Questions::AddressLine1 < ::Form::Question
].select(&:present?).join("\n")
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 15, 2024 => 16 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 15, 2024 => 16, 2025 => 14 }.freeze
end

2
app/models/form/sales/questions/age1.rb

@ -22,5 +22,5 @@ class Form::Sales::Questions::Age1 < ::Form::Question
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 20, 2024 => 22 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 20, 2024 => 22, 2025 => 20 }.freeze
end

2
app/models/form/sales/questions/age2.rb

@ -16,5 +16,5 @@ class Form::Sales::Questions::Age2 < ::Form::Question
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 28, 2024 => 30 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 28, 2024 => 30, 2025 => 28 }.freeze
end

2
app/models/form/sales/questions/armed_forces.rb

@ -14,5 +14,5 @@ class Form::Sales::Questions::ArmedForces < ::Form::Question
"8" => { "value" => "Don't know" },
}.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 62, 2024 => 64 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 62, 2024 => 64, 2025 => 61 }.freeze
end

2
app/models/form/sales/questions/armed_forces_spouse.rb

@ -14,5 +14,5 @@ class Form::Sales::Questions::ArmedForcesSpouse < ::Form::Question
"7" => { "value" => "Don't know" },
}.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 64, 2024 => 66 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 64, 2024 => 66, 2025 => 63 }.freeze
end

2
app/models/form/sales/questions/buyer1_age_known.rb

@ -31,5 +31,5 @@ class Form::Sales::Questions::Buyer1AgeKnown < ::Form::Question
"2" => { "value" => "Buyer prefers not to say" },
}.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 20, 2024 => 22 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 20, 2024 => 22, 2025 => 20 }.freeze
end

2
app/models/form/sales/questions/buyer1_ethnic_background_arab.rb

@ -14,5 +14,5 @@ class Form::Sales::Questions::Buyer1EthnicBackgroundArab < ::Form::Question
"16" => { "value" => "Other ethnic group" },
}.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 23, 2024 => 25 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 23, 2024 => 25, 2025 => 23 }.freeze
end

2
app/models/form/sales/questions/buyer1_ethnic_background_asian.rb

@ -17,5 +17,5 @@ class Form::Sales::Questions::Buyer1EthnicBackgroundAsian < ::Form::Question
"11" => { "value" => "Any other Asian or Asian British background" },
}.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 23, 2024 => 25 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 23, 2024 => 25, 2025 => 23 }.freeze
end

2
app/models/form/sales/questions/buyer1_ethnic_background_black.rb

@ -15,5 +15,5 @@ class Form::Sales::Questions::Buyer1EthnicBackgroundBlack < ::Form::Question
"14" => { "value" => "Any other Black, African, Caribbean or Black British background" },
}.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 23, 2024 => 25 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 23, 2024 => 25, 2025 => 23 }.freeze
end

2
app/models/form/sales/questions/buyer1_ethnic_background_mixed.rb

@ -16,5 +16,5 @@ class Form::Sales::Questions::Buyer1EthnicBackgroundMixed < ::Form::Question
"7" => { "value" => "Any other Mixed or Multiple ethnic background" },
}.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 23, 2024 => 25 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 23, 2024 => 25, 2025 => 23 }.freeze
end

2
app/models/form/sales/questions/buyer1_ethnic_background_white.rb

@ -27,5 +27,5 @@ class Form::Sales::Questions::Buyer1EthnicBackgroundWhite < ::Form::Question
end
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 23, 2024 => 25 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 23, 2024 => 25, 2025 => 23 }.freeze
end

2
app/models/form/sales/questions/buyer1_ethnic_group.rb

@ -18,5 +18,5 @@ class Form::Sales::Questions::Buyer1EthnicGroup < ::Form::Question
"17" => { "value" => "Buyer prefers not to say" },
}.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 22, 2024 => 24 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 22, 2024 => 24, 2025 => 22 }.freeze
end

2
app/models/form/sales/questions/buyer1_income.rb

@ -13,5 +13,5 @@ class Form::Sales::Questions::Buyer1Income < ::Form::Question
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 67, 2024 => 69 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 67, 2024 => 69, 2025 => 66 }.freeze
end

2
app/models/form/sales/questions/buyer1_income_known.rb

@ -24,5 +24,5 @@ class Form::Sales::Questions::Buyer1IncomeKnown < ::Form::Question
"1" => { "value" => "No" },
}.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 67, 2024 => 69 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 67, 2024 => 69, 2025 => 66 }.freeze
end

2
app/models/form/sales/questions/buyer1_live_in_property.rb

@ -13,5 +13,5 @@ class Form::Sales::Questions::Buyer1LiveInProperty < ::Form::Question
"2" => { "value" => "No" },
}.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 26, 2024 => 28 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 26, 2024 => 28, 2025 => 26 }.freeze
end

2
app/models/form/sales/questions/buyer1_mortgage.rb

@ -21,5 +21,5 @@ class Form::Sales::Questions::Buyer1Mortgage < ::Form::Question
}
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 68, 2024 => 70 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 68, 2024 => 70, 2025 => 67 }.freeze
end

2
app/models/form/sales/questions/buyer1_nationality.rb

@ -22,5 +22,5 @@ class Form::Sales::Questions::Buyer1Nationality < ::Form::Question
"13" => { "value" => "Buyer prefers not to say" },
}.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 24, 2024 => 26 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 24, 2024 => 26, 2025 => 24 }.freeze
end

2
app/models/form/sales/questions/buyer1_previous_tenure.rb

@ -21,5 +21,5 @@ class Form::Sales::Questions::Buyer1PreviousTenure < ::Form::Question
}
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 56, 2024 => 58 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 56, 2024 => 58, 2025 => 56 }.freeze
end

2
app/models/form/sales/questions/buyer1_working_situation.rb

@ -44,5 +44,5 @@ class Form::Sales::Questions::Buyer1WorkingSituation < ::Form::Question
end
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 25, 2024 => 27 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 25, 2024 => 27, 2025 => 25 }.freeze
end

2
app/models/form/sales/questions/buyer2_age_known.rb

@ -27,5 +27,5 @@ class Form::Sales::Questions::Buyer2AgeKnown < ::Form::Question
"1" => { "value" => "No" },
}.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 28, 2024 => 30 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 28, 2024 => 30, 2025 => 28 }.freeze
end

2
app/models/form/sales/questions/buyer2_ethnic_background_arab.rb

@ -14,5 +14,5 @@ class Form::Sales::Questions::Buyer2EthnicBackgroundArab < ::Form::Question
"16" => { "value" => "Other ethnic group" },
}.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 31, 2024 => 33 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 31, 2024 => 33, 2025 => 31 }.freeze
end

2
app/models/form/sales/questions/buyer2_ethnic_background_asian.rb

@ -17,5 +17,5 @@ class Form::Sales::Questions::Buyer2EthnicBackgroundAsian < ::Form::Question
"11" => { "value" => "Any other Asian or Asian British background" },
}.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 31, 2024 => 33 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 31, 2024 => 33, 2025 => 31 }.freeze
end

2
app/models/form/sales/questions/buyer2_ethnic_background_black.rb

@ -15,5 +15,5 @@ class Form::Sales::Questions::Buyer2EthnicBackgroundBlack < ::Form::Question
"14" => { "value" => "Any other Black, African, Caribbean or Black British background" },
}.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 31, 2024 => 33 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 31, 2024 => 33, 2025 => 31 }.freeze
end

2
app/models/form/sales/questions/buyer2_ethnic_background_mixed.rb

@ -16,5 +16,5 @@ class Form::Sales::Questions::Buyer2EthnicBackgroundMixed < ::Form::Question
"7" => { "value" => "Any other Mixed or Multiple ethnic background" },
}.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 31, 2024 => 33 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 31, 2024 => 33, 2025 => 31 }.freeze
end

2
app/models/form/sales/questions/buyer2_ethnic_background_white.rb

@ -27,5 +27,5 @@ class Form::Sales::Questions::Buyer2EthnicBackgroundWhite < ::Form::Question
end
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 31, 2024 => 33 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 31, 2024 => 33, 2025 => 31 }.freeze
end

2
app/models/form/sales/questions/buyer2_ethnic_group.rb

@ -18,5 +18,5 @@ class Form::Sales::Questions::Buyer2EthnicGroup < ::Form::Question
"17" => { "value" => "Buyer prefers not to say" },
}.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 30, 2024 => 32 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 30, 2024 => 32, 2025 => 30 }.freeze
end

2
app/models/form/sales/questions/buyer2_income.rb

@ -13,5 +13,5 @@ class Form::Sales::Questions::Buyer2Income < ::Form::Question
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 69, 2024 => 71 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 69, 2024 => 71, 2025 => 68 }.freeze
end

2
app/models/form/sales/questions/buyer2_income_known.rb

@ -24,5 +24,5 @@ class Form::Sales::Questions::Buyer2IncomeKnown < ::Form::Question
"1" => { "value" => "No" },
}.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 69, 2024 => 71 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 69, 2024 => 71, 2025 => 68 }.freeze
end

2
app/models/form/sales/questions/buyer2_live_in_property.rb

@ -13,5 +13,5 @@ class Form::Sales::Questions::Buyer2LiveInProperty < ::Form::Question
"2" => { "value" => "No" },
}.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 34, 2024 => 36 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 34, 2024 => 36, 2025 => 34 }.freeze
end

2
app/models/form/sales/questions/buyer2_living_in.rb

@ -13,5 +13,5 @@ class Form::Sales::Questions::Buyer2LivingIn < ::Form::Question
"3" => { "value" => "Don't know" },
}.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 60, 2024 => 62 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 60, 2024 => 62, 2025 => 59 }.freeze
end

2
app/models/form/sales/questions/buyer2_mortgage.rb

@ -21,5 +21,5 @@ class Form::Sales::Questions::Buyer2Mortgage < ::Form::Question
}
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 70, 2024 => 72 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 70, 2024 => 72, 2025 => 69 }.freeze
end

2
app/models/form/sales/questions/buyer2_nationality.rb

@ -22,5 +22,5 @@ class Form::Sales::Questions::Buyer2Nationality < ::Form::Question
"13" => { "value" => "Buyer prefers not to say" },
}.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 32, 2024 => 34 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 32, 2024 => 34, 2025 => 32 }.freeze
end

2
app/models/form/sales/questions/buyer2_relationship_to_buyer1.rb

@ -33,5 +33,5 @@ class Form::Sales::Questions::Buyer2RelationshipToBuyer1 < ::Form::Question
end
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 27, 2024 => 29 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 27, 2024 => 29, 2025 => 27 }.freeze
end

2
app/models/form/sales/questions/buyer2_relationship_to_buyer1_yes_no.rb

@ -19,5 +19,5 @@ class Form::Sales::Questions::Buyer2RelationshipToBuyer1YesNo < ::Form::Question
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
end
QUESTION_NUMBER_FROM_YEAR = { 2025 => 29 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2025 => 27 }.freeze
end

2
app/models/form/sales/questions/buyer2_working_situation.rb

@ -51,5 +51,5 @@ class Form::Sales::Questions::Buyer2WorkingSituation < ::Form::Question
end
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 33, 2024 => 35 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 33, 2024 => 35, 2025 => 33 }.freeze
end

2
app/models/form/sales/questions/buyer_interview.rb

@ -13,5 +13,5 @@ class Form::Sales::Questions::BuyerInterview < ::Form::Question
"1" => { "value" => "No" },
}.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 18, 2024 => 13 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 18, 2024 => 13, 2025 => 11 }.freeze
end

2
app/models/form/sales/questions/buyer_still_serving.rb

@ -14,5 +14,5 @@ class Form::Sales::Questions::BuyerStillServing < ::Form::Question
"7" => { "value" => "Don't know" },
}.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 63, 2024 => 65 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 63, 2024 => 65, 2025 => 62 }.freeze
end

2
app/models/form/sales/questions/county.rb

@ -10,5 +10,5 @@ class Form::Sales::Questions::County < ::Form::Question
@hide_question_number_on_page = true
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 15, 2024 => 16 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 15, 2024 => 16, 2025 => 14 }.freeze
end

1
app/models/form/sales/questions/deposit_amount.rb

@ -21,6 +21,7 @@ class Form::Sales::Questions::DepositAmount < ::Form::Question
QUESTION_NUMBER_FROM_YEAR_AND_OWNERSHIP = {
2023 => { 1 => 95, 2 => 108, 3 => 116 },
2024 => { 1 => 96, 2 => 109, 3 => 116 },
2025 => { 1 => 85, 2 => 110 },
}.freeze
def top_guidance_partial

2
app/models/form/sales/questions/deposit_discount.rb

@ -12,5 +12,5 @@ class Form::Sales::Questions::DepositDiscount < ::Form::Question
@top_guidance_partial = "financial_calculations_shared_ownership"
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 96, 2024 => 97 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 96, 2024 => 97, 2025 => 86 }.freeze
end

2
app/models/form/sales/questions/discount.rb

@ -12,5 +12,5 @@ class Form::Sales::Questions::Discount < ::Form::Question
@top_guidance_partial = "financial_calculations_discounted_ownership"
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 102, 2024 => 103 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 102, 2024 => 103, 2025 => 105 }.freeze
end

2
app/models/form/sales/questions/discounted_ownership_type.rb

@ -23,5 +23,5 @@ class Form::Sales::Questions::DiscountedOwnershipType < ::Form::Question
"discounted_ownership_type_definitions" if form.start_date.year >= 2023
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 5, 2024 => 7 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 5, 2024 => 7, 2025 => 8 }.freeze
end

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

@ -9,9 +9,11 @@ class Form::Sales::Questions::Equity < ::Form::Question
@step = 0.1
@width = 5
@suffix = "%"
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
@question_number = question_number_from_year[form.start_date.year] || question_number_from_year[question_number_from_year.keys.max]
@top_guidance_partial = "financial_calculations_shared_ownership"
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 89, 2024 => 90 }.freeze
def question_number_from_year
{ 2023 => 89, 2024 => 90, 2025 => subsection.id == "shared_ownership_staircasing_transaction" ? 98 : 81 }
end
end

1
app/models/form/sales/questions/extra_borrowing.rb

@ -18,5 +18,6 @@ class Form::Sales::Questions::ExtraBorrowing < ::Form::Question
QUESTION_NUMBER_FROM_YEAR_AND_OWNERSHIP = {
2023 => { 1 => 94, 2 => 107, 3 => 115 },
2024 => { 1 => 95, 2 => 108, 3 => 115 },
2025 => { 2 => 109 },
}.freeze
end

2
app/models/form/sales/questions/fromprop.rb

@ -27,5 +27,5 @@ class Form::Sales::Questions::Fromprop < ::Form::Question
}
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 86, 2024 => 87 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 86, 2024 => 87, 2025 => 78 }.freeze
end

2
app/models/form/sales/questions/gender_identity1.rb

@ -15,5 +15,5 @@ class Form::Sales::Questions::GenderIdentity1 < ::Form::Question
"R" => { "value" => "Prefers not to say" },
}.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 21, 2024 => 23 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 21, 2024 => 23, 2025 => 21 }.freeze
end

2
app/models/form/sales/questions/gender_identity2.rb

@ -22,5 +22,5 @@ class Form::Sales::Questions::GenderIdentity2 < ::Form::Question
"R" => { "value" => "Buyer prefers not to say" },
}.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 29, 2024 => 31 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 29, 2024 => 31, 2025 => 29 }.freeze
end

2
app/models/form/sales/questions/grant.rb

@ -12,5 +12,5 @@ class Form::Sales::Questions::Grant < ::Form::Question
@top_guidance_partial = "financial_calculations_discounted_ownership"
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 101, 2024 => 102 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 101, 2024 => 102, 2025 => 104 }.freeze
end

2
app/models/form/sales/questions/handover_date.rb

@ -7,5 +7,5 @@ class Form::Sales::Questions::HandoverDate < ::Form::Question
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
end
QUESTION_NUMBER_FROM_YEAR = { 2023 => 82, 2024 => 84 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 82, 2024 => 84, 2025 => 76 }.freeze
end

16
app/models/form/sales/questions/has_leasehold_charges.rb

@ -16,7 +16,7 @@ class Form::Sales::Questions::HasLeaseholdCharges < ::Form::Question
],
}
@ownershipsch = ownershipsch
@question_number = question_number
@question_number = QUESTION_NUMBER_FROM_YEAR_AND_OWNERSHIP.fetch(form.start_date.year, QUESTION_NUMBER_FROM_YEAR_AND_OWNERSHIP.max_by { |k, _v| k }.last)[ownershipsch]
end
ANSWER_OPTIONS = {
@ -24,14 +24,8 @@ class Form::Sales::Questions::HasLeaseholdCharges < ::Form::Question
"0" => { "value" => "No" },
}.freeze
def question_number
case @ownershipsch
when 1
99
when 2
110
when 3
117
end
end
QUESTION_NUMBER_FROM_YEAR_AND_OWNERSHIP = {
2024 => { 1 => 99, 2 => 110, 3 => 117 },
2025 => { 1 => 88, 2 => 111 },
}.freeze
end

3
app/models/form/sales/questions/has_management_fee.rb

@ -15,10 +15,13 @@ class Form::Sales::Questions::HasManagementFee < ::Form::Question
},
],
}
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
end
ANSWER_OPTIONS = {
"1" => { "value" => "Yes" },
"0" => { "value" => "No" },
}.freeze
QUESTION_NUMBER_FROM_YEAR = { 2025 => 89 }.freeze
end

2
app/models/form/sales/questions/household_disability.rb

@ -13,5 +13,5 @@ class Form::Sales::Questions::HouseholdDisability < ::Form::Question
"3" => { "value" => "Don't know" },
}.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 65, 2024 => 67 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 65, 2024 => 67, 2025 => 64 }.freeze
end

2
app/models/form/sales/questions/household_wheelchair.rb

@ -13,5 +13,5 @@ class Form::Sales::Questions::HouseholdWheelchair < ::Form::Question
"3" => { "value" => "Don't know" },
}.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 66, 2024 => 68 }.freeze
QUESTION_NUMBER_FROM_YEAR = { 2023 => 66, 2024 => 68, 2025 => 65 }.freeze
end

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save