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.
		
		
		
		
		
			
		
			
				
					
					
						
							35 lines
						
					
					
						
							1.0 KiB
						
					
					
				
			
		
		
	
	
							35 lines
						
					
					
						
							1.0 KiB
						
					
					
				class Form::Sales::Questions::PersonGenderIdentity < ::Form::Question | 
						|
  def initialize(id, hsh, page, person_index:) | 
						|
    super(id, hsh, page) | 
						|
    @type = "radio" | 
						|
    @copy_key = "sales.household_characteristics.sex2.person" if person_index == 2 | 
						|
    @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 question_number | 
						|
    base_question_number = case form.start_date.year | 
						|
                           when 2023 | 
						|
                             30 | 
						|
                           else | 
						|
                             32 | 
						|
                           end | 
						|
 | 
						|
    base_question_number + (4 * @person_index) | 
						|
  end | 
						|
end
 | 
						|
 |