Submit social housing lettings and sales data (CORE)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

27 lines
1016 B

class Form::Sales::Questions::GenderDescription < ::Form::Question
def initialize(id, hsh, page, person_index:, buyer: false)
super(id, hsh, page)
@id = "gender_description#{person_index}"
@type = "text"
@check_answers_card_number = person_index
@buyer = buyer
@person_index = person_index
@question_number = question_number
end
BASE_QUESTION_NUMBERS = { 2026 => 32 }.freeze
BUYER_OVERRIDE_QUESTION_NUMBERS = { 2026 => { 1 => 23, 2 => 32 } }.freeze
def question_number
buyer_override_question_number = BUYER_OVERRIDE_QUESTION_NUMBERS.dig(form.start_date.year, @person_index)
return buyer_override_question_number if buyer_override_question_number.present? && @buyer
base_question_number = BASE_QUESTION_NUMBERS[form.start_date.year] || BASE_QUESTION_NUMBERS[BASE_QUESTION_NUMBERS.keys.max]
base_question_number + (form.person_question_count * @person_index)
end
def derived?(log)
log.public_send("gender_same_as_sex#{@person_index}") != 2
end
end