class Form::Sales::Questions::NationalityAll < ::Form::Question def initialize(id, hsh, page, buyer_index) super(id, hsh, page) @type = "select" @answer_options = GlobalConstants::COUNTRIES_ANSWER_OPTIONS @check_answers_card_number = buyer_index @buyer_index = buyer_index @question_number = QUESTION_NUMBER_FROM_YEAR_AND_BUYER_INDEX.fetch(form.start_date.year, QUESTION_NUMBER_FROM_YEAR_AND_BUYER_INDEX.max_by { |k, _v| k }.last)[buyer_index] end def answer_label(log, _current_user = nil) answer_options[log.send(id).to_s]["name"] end QUESTION_NUMBER_FROM_YEAR_AND_BUYER_INDEX = { 2023 => { 1 => 24, 2 => 32 }, 2024 => { 1 => 26, 2 => 34 }, 2025 => { 1 => 24, 2 => 32 }, }.freeze def label_from_value(value) return unless value return "Buyer prefers not to say" if value.to_i.zero? answer_options[value.to_s]["name"] end end