Browse Source

use separate question text for shared and discounted mscharge from 2025

pull/3022/head
Carolyn 3 weeks ago
parent
commit
1ec6367984
  1. 14
      app/models/form/sales/pages/leasehold_charges.rb
  2. 14
      app/models/form/sales/questions/has_leasehold_charges.rb
  3. 14
      app/models/form/sales/questions/leasehold_charges.rb
  4. 35
      config/locales/forms/2025/sales/sale_information.en.yml

14
app/models/form/sales/pages/leasehold_charges.rb

@ -2,7 +2,19 @@ class Form::Sales::Pages::LeaseholdCharges < ::Form::Page
def initialize(id, hsh, subsection, ownershipsch:)
super(id, hsh, subsection)
@ownershipsch = ownershipsch
@copy_key = "sales.sale_information.leaseholdcharges"
end
def copy_key
if form.start_year_2025_or_later?
case @ownershipsch
when 1
"sales.sale_information.leaseholdcharges.shared_ownership"
when 2
"sales.sale_information.leaseholdcharges.discounted_ownership"
end
else
"sales.sale_information.leaseholdcharges"
end
end
def questions

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

@ -2,7 +2,6 @@ class Form::Sales::Questions::HasLeaseholdCharges < ::Form::Question
def initialize(id, hsh, subsection, ownershipsch:)
super(id, hsh, subsection)
@id = "has_mscharge"
@copy_key = "sales.sale_information.leaseholdcharges.has_mscharge"
@type = "radio"
@answer_options = ANSWER_OPTIONS
@conditional_for = {
@ -19,6 +18,19 @@ class Form::Sales::Questions::HasLeaseholdCharges < ::Form::Question
@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
def copy_key
if form.start_year_2025_or_later?
case @ownershipsch
when 1
"sales.sale_information.leaseholdcharges.shared_ownership.has_mscharge"
when 2
"sales.sale_information.leaseholdcharges.discounted_ownership.has_mscharge"
end
else
"sales.sale_information.leaseholdcharges.has_mscharge"
end
end
ANSWER_OPTIONS = {
"1" => { "value" => "Yes" },
"0" => { "value" => "No" },

14
app/models/form/sales/questions/leasehold_charges.rb

@ -2,7 +2,6 @@ class Form::Sales::Questions::LeaseholdCharges < ::Form::Question
def initialize(id, hsh, subsection, ownershipsch:)
super(id, hsh, subsection)
@id = "mscharge"
@copy_key = "sales.sale_information.leaseholdcharges.mscharge"
@type = "numeric"
@min = 1
@step = 0.01
@ -12,6 +11,19 @@ class Form::Sales::Questions::LeaseholdCharges < ::Form::Question
@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
def copy_key
if form.start_year_2025_or_later?
case @ownershipsch
when 1
"sales.sale_information.leaseholdcharges.shared_ownership.mscharge"
when 2
"sales.sale_information.leaseholdcharges.discounted_ownership.mscharge"
end
else
"sales.sale_information.leaseholdcharges.mscharge"
end
end
QUESTION_NUMBER_FROM_YEAR_AND_OWNERSHIP = {
2023 => { 1 => 98, 2 => 109, 3 => 117 },
2024 => { 1 => 99, 2 => 110, 3 => 117 },

35
config/locales/forms/2025/sales/sale_information.en.yml

@ -246,17 +246,30 @@ en:
question_text: "What is the basic monthly rent after staircasing?"
leaseholdcharges:
page_header: ""
has_mscharge:
check_answer_label: "Property service charges"
check_answer_prompt: "Enter service charges if any"
hint_text: "For example, service and management charges"
question_text: "Does the property have any service charges?"
mscharge:
check_answer_label: "Monthly leasehold charges"
check_answer_prompt: ""
hint_text: ""
question_text: "Enter the total monthly charge"
shared_ownership:
page_header: ""
has_mscharge:
check_answer_label: "Property service charges"
check_answer_prompt: "Enter service charges if any"
hint_text: "This includes any charges for day-to-day maintenance and repairs, building insurance, and any contributions to a sinking or reserved fund. It does not include estate management fees."
question_text: "Does the property have any service charges?"
mscharge:
check_answer_label: "Monthly leasehold charges"
check_answer_prompt: ""
hint_text: ""
question_text: "Enter the total monthly charge"
discounted_ownership:
page_header: ""
has_mscharge:
check_answer_label: "Property leasehold charges"
check_answer_prompt: "Enter leasehold charges if any"
hint_text: "For example, service and management charges"
question_text: "Does the property have any monthly leasehold charges?"
mscharge:
check_answer_label: "Monthly leasehold charges"
check_answer_prompt: ""
hint_text: ""
question_text: "Enter the total monthly charge"
purchase_price:
discounted_ownership:

Loading…
Cancel
Save