42 lines
1.3 KiB
42 lines
1.3 KiB
class Form::Sales::Questions::PersonGenderIdentity < ::Form::Question |
|
def initialize(id, hsh, page, person_index:) |
|
super(id, hsh, page) |
|
@check_answer_label = "Person #{person_index}’s gender identity" |
|
@header = "Which of these best describes Person #{person_index}’s gender identity?" |
|
@type = "radio" |
|
@answer_options = ANSWER_OPTIONS |
|
@check_answers_card_number = person_index |
|
@inferred_check_answers_value = [{ |
|
"condition" => { |
|
id => "R", |
|
}, |
|
"value" => "Prefers not to say", |
|
}] |
|
@person_index = person_index |
|
@question_number = question_number |
|
end |
|
|
|
ANSWER_OPTIONS = { |
|
"F" => { "value" => "Female" }, |
|
"M" => { "value" => "Male" }, |
|
"X" => { "value" => "Non-binary" }, |
|
"R" => { "value" => "Person prefers not to say" }, |
|
}.freeze |
|
|
|
def hint_text |
|
return unless form.start_year_after_2024? |
|
|
|
"This should be however they personally choose to identify from the options below. This may or may not be the same as their biological sex or the sex they were assigned at birth." |
|
end |
|
|
|
def question_number |
|
base_question_number = case form.start_date.year |
|
when 2023 |
|
30 |
|
else |
|
32 |
|
end |
|
|
|
base_question_number + (4 * @person_index) |
|
end |
|
end
|
|
|