34 changed files with 342 additions and 157 deletions
			
			
		@ -0,0 +1,34 @@ | 
				
			|||||||
 | 
					class Form::Sales::Pages::Person1AgeJointPurchase < ::Form::Page | 
				
			||||||
 | 
					  def initialize(id, hsh, subsection) | 
				
			||||||
 | 
					    super | 
				
			||||||
 | 
					    @id = "person_1_age_joint_purchase" | 
				
			||||||
 | 
					    @header = "" | 
				
			||||||
 | 
					    @description = "" | 
				
			||||||
 | 
					    @subsection = subsection | 
				
			||||||
 | 
					    @depends_on = [ | 
				
			||||||
 | 
					      { "details_known_1" => 1, "jointpur" => 1 }, | 
				
			||||||
 | 
					    ] | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  def questions | 
				
			||||||
 | 
					    @questions ||= [ | 
				
			||||||
 | 
					      Form::Sales::Questions::Person1AgeKnown.new("age3_known", { check_answers_card_number: 3, | 
				
			||||||
 | 
					                                                                  conditional_for: { | 
				
			||||||
 | 
					                                                                    "age3" => [0], | 
				
			||||||
 | 
					                                                                  }, | 
				
			||||||
 | 
					                                                                  hidden_in_check_answers: { | 
				
			||||||
 | 
					                                                                    "depends_on" => [ | 
				
			||||||
 | 
					                                                                      { | 
				
			||||||
 | 
					                                                                        "age3_known" => 0, | 
				
			||||||
 | 
					                                                                      }, | 
				
			||||||
 | 
					                                                                      { | 
				
			||||||
 | 
					                                                                        "age3_known" => 1, | 
				
			||||||
 | 
					                                                                      }, | 
				
			||||||
 | 
					                                                                    ], | 
				
			||||||
 | 
					                                                                  } }, self), | 
				
			||||||
 | 
					      Form::Sales::Questions::Person1Age.new("age3", { check_answers_card_number: 3, | 
				
			||||||
 | 
					                                                       hidden_in_check_answers: { "depends_on" => [{ "jointpur" => 2 }] }, | 
				
			||||||
 | 
					                                                       inferred_check_answers_value: { "condition" => { "age3_known" => 1 }, "value" => "Not known" } }, self), | 
				
			||||||
 | 
					    ] | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					end | 
				
			||||||
@ -0,0 +1,21 @@ | 
				
			|||||||
 | 
					class Form::Sales::Pages::Person1KnownJointPurchase < ::Form::Page | 
				
			||||||
 | 
					  def initialize(id, hsh, subsection) | 
				
			||||||
 | 
					    super | 
				
			||||||
 | 
					    @id = "person_1_known_joint_purchase" | 
				
			||||||
 | 
					    @header = "" | 
				
			||||||
 | 
					    @description = "" | 
				
			||||||
 | 
					    @subsection = subsection | 
				
			||||||
 | 
					    @depends_on = [ | 
				
			||||||
 | 
					      { "hholdcount" => 1, "jointpur" => 1 }, | 
				
			||||||
 | 
					      { "hholdcount" => 2, "jointpur" => 1 }, | 
				
			||||||
 | 
					      { "hholdcount" => 3, "jointpur" => 1 }, | 
				
			||||||
 | 
					      { "hholdcount" => 4, "jointpur" => 1 }, | 
				
			||||||
 | 
					    ] | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  def questions | 
				
			||||||
 | 
					    @questions ||= [ | 
				
			||||||
 | 
					      Form::Sales::Questions::Person1Known.new(nil, { check_answers_card_number: 3 }, self), | 
				
			||||||
 | 
					    ] | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					end | 
				
			||||||
@ -0,0 +1,34 @@ | 
				
			|||||||
 | 
					class Form::Sales::Pages::Person2AgeJointPurchase < ::Form::Page | 
				
			||||||
 | 
					  def initialize(id, hsh, subsection) | 
				
			||||||
 | 
					    super | 
				
			||||||
 | 
					    @id = "person_2_age_joint_purchase" | 
				
			||||||
 | 
					    @header = "" | 
				
			||||||
 | 
					    @description = "" | 
				
			||||||
 | 
					    @subsection = subsection | 
				
			||||||
 | 
					    @depends_on = [ | 
				
			||||||
 | 
					      { "details_known_2" => 1, "jointpur" => 1 }, | 
				
			||||||
 | 
					    ] | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  def questions | 
				
			||||||
 | 
					    @questions ||= [ | 
				
			||||||
 | 
					      Form::Sales::Questions::Person2AgeKnown.new("age4_known", { check_answers_card_number: 4, | 
				
			||||||
 | 
					                                                                  conditional_for: { | 
				
			||||||
 | 
					                                                                    "age4" => [0], | 
				
			||||||
 | 
					                                                                  }, | 
				
			||||||
 | 
					                                                                  hidden_in_check_answers: { | 
				
			||||||
 | 
					                                                                    "depends_on" => [ | 
				
			||||||
 | 
					                                                                      { | 
				
			||||||
 | 
					                                                                        "age4_known" => 0, | 
				
			||||||
 | 
					                                                                      }, | 
				
			||||||
 | 
					                                                                      { | 
				
			||||||
 | 
					                                                                        "age4_known" => 1, | 
				
			||||||
 | 
					                                                                      }, | 
				
			||||||
 | 
					                                                                    ], | 
				
			||||||
 | 
					                                                                  } }, self), | 
				
			||||||
 | 
					      Form::Sales::Questions::Person2Age.new("age4", { check_answers_card_number: 4, | 
				
			||||||
 | 
					                                                       hidden_in_check_answers: { "depends_on" => [{ "jointpur" => 2 }] }, | 
				
			||||||
 | 
					                                                       inferred_check_answers_value: { "condition" => { "age4_known" => 1 }, "value" => "Not known" } }, self), | 
				
			||||||
 | 
					    ] | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					end | 
				
			||||||
@ -0,0 +1,21 @@ | 
				
			|||||||
 | 
					class Form::Sales::Pages::Person2KnownJointPurchase < ::Form::Page | 
				
			||||||
 | 
					  def initialize(id, hsh, subsection) | 
				
			||||||
 | 
					    super | 
				
			||||||
 | 
					    @id = "person_2_known_joint_purchase" | 
				
			||||||
 | 
					    @header_partial = "person_2_known_page" | 
				
			||||||
 | 
					    @header = "" | 
				
			||||||
 | 
					    @description = "" | 
				
			||||||
 | 
					    @subsection = subsection | 
				
			||||||
 | 
					    @depends_on = [ | 
				
			||||||
 | 
					      { "hholdcount" => 2, "jointpur" => 1 }, | 
				
			||||||
 | 
					      { "hholdcount" => 3, "jointpur" => 1 }, | 
				
			||||||
 | 
					      { "hholdcount" => 4, "jointpur" => 1 }, | 
				
			||||||
 | 
					    ] | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  def questions | 
				
			||||||
 | 
					    @questions ||= [ | 
				
			||||||
 | 
					      Form::Sales::Questions::Person2Known.new(nil, { check_answers_card_number: 4 }, self), | 
				
			||||||
 | 
					    ] | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					end | 
				
			||||||
@ -0,0 +1,34 @@ | 
				
			|||||||
 | 
					class Form::Sales::Pages::Person3AgeJointPurchase < ::Form::Page | 
				
			||||||
 | 
					  def initialize(id, hsh, subsection) | 
				
			||||||
 | 
					    super | 
				
			||||||
 | 
					    @id = "person_3_age_joint_purchase" | 
				
			||||||
 | 
					    @header = "" | 
				
			||||||
 | 
					    @description = "" | 
				
			||||||
 | 
					    @subsection = subsection | 
				
			||||||
 | 
					    @depends_on = [ | 
				
			||||||
 | 
					      { "details_known_3" => 1, "jointpur" => 1 }, | 
				
			||||||
 | 
					    ] | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  def questions | 
				
			||||||
 | 
					    @questions ||= [ | 
				
			||||||
 | 
					      Form::Sales::Questions::Person3AgeKnown.new("age5_known", { check_answers_card_number: 5, | 
				
			||||||
 | 
					                                                                  conditional_for: { | 
				
			||||||
 | 
					                                                                    "age5" => [0], | 
				
			||||||
 | 
					                                                                  }, | 
				
			||||||
 | 
					                                                                  hidden_in_check_answers: { | 
				
			||||||
 | 
					                                                                    "depends_on" => [ | 
				
			||||||
 | 
					                                                                      { | 
				
			||||||
 | 
					                                                                        "age5_known" => 0, | 
				
			||||||
 | 
					                                                                      }, | 
				
			||||||
 | 
					                                                                      { | 
				
			||||||
 | 
					                                                                        "age5_known" => 1, | 
				
			||||||
 | 
					                                                                      }, | 
				
			||||||
 | 
					                                                                    ], | 
				
			||||||
 | 
					                                                                  } }, self), | 
				
			||||||
 | 
					      Form::Sales::Questions::Person3Age.new("age5", { check_answers_card_number: 5, | 
				
			||||||
 | 
					                                                       hidden_in_check_answers: { "depends_on" => [{ "jointpur" => 2 }] }, | 
				
			||||||
 | 
					                                                       inferred_check_answers_value: { "condition" => { "age5_known" => 1 }, "value" => "Not known" } }, self), | 
				
			||||||
 | 
					    ] | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					end | 
				
			||||||
@ -0,0 +1,20 @@ | 
				
			|||||||
 | 
					class Form::Sales::Pages::Person3KnownJointPurchase < ::Form::Page | 
				
			||||||
 | 
					  def initialize(id, hsh, subsection) | 
				
			||||||
 | 
					    super | 
				
			||||||
 | 
					    @id = "person_3_known_joint_purchase" | 
				
			||||||
 | 
					    @header_partial = "person_3_known_page" | 
				
			||||||
 | 
					    @header = "" | 
				
			||||||
 | 
					    @description = "" | 
				
			||||||
 | 
					    @subsection = subsection | 
				
			||||||
 | 
					    @depends_on = [ | 
				
			||||||
 | 
					      { "hholdcount" => 3, "jointpur" => 1 }, | 
				
			||||||
 | 
					      { "hholdcount" => 4, "jointpur" => 1 }, | 
				
			||||||
 | 
					    ] | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  def questions | 
				
			||||||
 | 
					    @questions ||= [ | 
				
			||||||
 | 
					      Form::Sales::Questions::Person3Known.new(nil, { check_answers_card_number: 5 }, self), | 
				
			||||||
 | 
					    ] | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					end | 
				
			||||||
@ -0,0 +1,34 @@ | 
				
			|||||||
 | 
					class Form::Sales::Pages::Person4AgeJointPurchase < ::Form::Page | 
				
			||||||
 | 
					  def initialize(id, hsh, subsection) | 
				
			||||||
 | 
					    super | 
				
			||||||
 | 
					    @id = "person_4_age_joint_purchase" | 
				
			||||||
 | 
					    @header = "" | 
				
			||||||
 | 
					    @description = "" | 
				
			||||||
 | 
					    @subsection = subsection | 
				
			||||||
 | 
					    @depends_on = [ | 
				
			||||||
 | 
					      { "details_known_4" => 1, "jointpur" => 1 }, | 
				
			||||||
 | 
					    ] | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  def questions | 
				
			||||||
 | 
					    @questions ||= [ | 
				
			||||||
 | 
					      Form::Sales::Questions::Person4AgeKnown.new("age6_known", { check_answers_card_number: 6, | 
				
			||||||
 | 
					                                                                  conditional_for: { | 
				
			||||||
 | 
					                                                                    "age6" => [0], | 
				
			||||||
 | 
					                                                                  }, | 
				
			||||||
 | 
					                                                                  hidden_in_check_answers: { | 
				
			||||||
 | 
					                                                                    "depends_on" => [ | 
				
			||||||
 | 
					                                                                      { | 
				
			||||||
 | 
					                                                                        "age6_known" => 0, | 
				
			||||||
 | 
					                                                                      }, | 
				
			||||||
 | 
					                                                                      { | 
				
			||||||
 | 
					                                                                        "age6_known" => 1, | 
				
			||||||
 | 
					                                                                      }, | 
				
			||||||
 | 
					                                                                    ], | 
				
			||||||
 | 
					                                                                  } }, self), | 
				
			||||||
 | 
					      Form::Sales::Questions::Person4Age.new("age6", { check_answers_card_number: 6, | 
				
			||||||
 | 
					                                                       hidden_in_check_answers: { "depends_on" => [{ "jointpur" => 2 }] }, | 
				
			||||||
 | 
					                                                       inferred_check_answers_value: { "condition" => { "age6_known" => 1 }, "value" => "Not known" } }, self), | 
				
			||||||
 | 
					    ] | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					end | 
				
			||||||
@ -0,0 +1,19 @@ | 
				
			|||||||
 | 
					class Form::Sales::Pages::Person4KnownJointPurchase < ::Form::Page | 
				
			||||||
 | 
					  def initialize(id, hsh, subsection) | 
				
			||||||
 | 
					    super | 
				
			||||||
 | 
					    @id = "person_4_known_joint_purchase" | 
				
			||||||
 | 
					    @header_partial = "person_4_known_page" | 
				
			||||||
 | 
					    @header = "" | 
				
			||||||
 | 
					    @description = "" | 
				
			||||||
 | 
					    @subsection = subsection | 
				
			||||||
 | 
					    @depends_on = [ | 
				
			||||||
 | 
					      { "hholdcount" => 4, "jointpur" => 1 }, | 
				
			||||||
 | 
					    ] | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  def questions | 
				
			||||||
 | 
					    @questions ||= [ | 
				
			||||||
 | 
					      Form::Sales::Questions::Person4Known.new(nil, { check_answers_card_number: 6 }, self), | 
				
			||||||
 | 
					    ] | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					end | 
				
			||||||
@ -1,16 +1,13 @@ | 
				
			|||||||
class Form::Sales::Questions::Person1Age < ::Form::Question | 
					class Form::Sales::Questions::Person1Age < ::Form::Question | 
				
			||||||
  def initialize(id, hsh, page) | 
					  def initialize(id, hsh, page) | 
				
			||||||
    super | 
					    super | 
				
			||||||
    @id = "age3" | 
					 | 
				
			||||||
    @check_answer_label = "Person 1’s age" | 
					    @check_answer_label = "Person 1’s age" | 
				
			||||||
    @header = "Age" | 
					    @header = "Age" | 
				
			||||||
    @type = "numeric" | 
					    @type = "numeric" | 
				
			||||||
    @page = page | 
					    @page = page | 
				
			||||||
    @width = 3 | 
					    @width = 3 | 
				
			||||||
    @inferred_check_answers_value = { | 
					    @inferred_check_answers_value = hsh[:inferred_check_answers_value] | 
				
			||||||
      "condition" => { "age3_known" => 1 }, | 
					    @hidden_in_check_answers = hsh[:hidden_in_check_answers] | 
				
			||||||
      "value" => "Not known", | 
					    @check_answers_card_number = hsh[:check_answers_card_number] | 
				
			||||||
    } | 
					 | 
				
			||||||
    @check_answers_card_number = 3 | 
					 | 
				
			||||||
  end | 
					  end | 
				
			||||||
end | 
					end | 
				
			||||||
 | 
				
			|||||||
@ -1,19 +0,0 @@ | 
				
			|||||||
class Form::Sales::Questions::Person1GenderIdentityJointPurchase < ::Form::Question | 
					 | 
				
			||||||
  def initialize(id, hsh, page) | 
					 | 
				
			||||||
    super | 
					 | 
				
			||||||
    @id = "sex3" | 
					 | 
				
			||||||
    @check_answer_label = "Person 1’s gender identity" | 
					 | 
				
			||||||
    @header = "Which of these best describes Person 1’s gender identity?" | 
					 | 
				
			||||||
    @type = "radio" | 
					 | 
				
			||||||
    @page = page | 
					 | 
				
			||||||
    @answer_options = ANSWER_OPTIONS | 
					 | 
				
			||||||
    @check_answers_card_number = 3 | 
					 | 
				
			||||||
  end | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  ANSWER_OPTIONS = { | 
					 | 
				
			||||||
    "F" => { "value" => "Female" }, | 
					 | 
				
			||||||
    "M" => { "value" => "Male" }, | 
					 | 
				
			||||||
    "X" => { "value" => "Non-binary" }, | 
					 | 
				
			||||||
    "R" => { "value" => "Buyer prefers not to say" }, | 
					 | 
				
			||||||
  }.freeze | 
					 | 
				
			||||||
end | 
					 | 
				
			||||||
@ -1,20 +0,0 @@ | 
				
			|||||||
class Form::Sales::Questions::Person1RelationshipToBuyer1JointPurchase < ::Form::Question | 
					 | 
				
			||||||
  def initialize(id, hsh, page) | 
					 | 
				
			||||||
    super | 
					 | 
				
			||||||
    @check_answer_label = "Person 1's relationship to buyer 1" | 
					 | 
				
			||||||
    @header = "What is person 1's relationship to buyer 1?" | 
					 | 
				
			||||||
    @type = "radio" | 
					 | 
				
			||||||
    @hint_text = "" | 
					 | 
				
			||||||
    @page = page | 
					 | 
				
			||||||
    @answer_options = ANSWER_OPTIONS | 
					 | 
				
			||||||
    @check_answers_card_number = hsh[:check_answers_card_number] | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  end | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  ANSWER_OPTIONS = { | 
					 | 
				
			||||||
    "P" => { "value" => "Partner" }, | 
					 | 
				
			||||||
    "C" => { "value" => "Child", "hint" => "Must be eligible for child benefit, aged under 16 or under 20 if still in full-time education." }, | 
					 | 
				
			||||||
    "X" => { "value" => "Other" }, | 
					 | 
				
			||||||
    "R" => { "value" => "Buyer prefers not to say" }, | 
					 | 
				
			||||||
  }.freeze | 
					 | 
				
			||||||
end | 
					 | 
				
			||||||
@ -1,16 +1,13 @@ | 
				
			|||||||
class Form::Sales::Questions::Person2Age < ::Form::Question | 
					class Form::Sales::Questions::Person2Age < ::Form::Question | 
				
			||||||
  def initialize(id, hsh, page) | 
					  def initialize(id, hsh, page) | 
				
			||||||
    super | 
					    super | 
				
			||||||
    @id = "age4" | 
					 | 
				
			||||||
    @check_answer_label = "Person 2’s age" | 
					    @check_answer_label = "Person 2’s age" | 
				
			||||||
    @header = "Age" | 
					    @header = "Age" | 
				
			||||||
    @type = "numeric" | 
					    @type = "numeric" | 
				
			||||||
    @page = page | 
					    @page = page | 
				
			||||||
    @width = 3 | 
					    @width = 3 | 
				
			||||||
    @inferred_check_answers_value = { | 
					    @inferred_check_answers_value = hsh[:inferred_check_answers_value] | 
				
			||||||
      "condition" => { "age4_known" => 1 }, | 
					    @hidden_in_check_answers = hsh[:hidden_in_check_answers] | 
				
			||||||
      "value" => "Not known", | 
					    @check_answers_card_number = hsh[:check_answers_card_number] | 
				
			||||||
    } | 
					 | 
				
			||||||
    @check_answers_card_number = 4 | 
					 | 
				
			||||||
  end | 
					  end | 
				
			||||||
end | 
					end | 
				
			||||||
 | 
				
			|||||||
@ -1,16 +1,13 @@ | 
				
			|||||||
class Form::Sales::Questions::Person3Age < ::Form::Question | 
					class Form::Sales::Questions::Person3Age < ::Form::Question | 
				
			||||||
  def initialize(id, hsh, page) | 
					  def initialize(id, hsh, page) | 
				
			||||||
    super | 
					    super | 
				
			||||||
    @id = "age5" | 
					 | 
				
			||||||
    @check_answer_label = "Person 3’s age" | 
					    @check_answer_label = "Person 3’s age" | 
				
			||||||
    @header = "Age" | 
					    @header = "Age" | 
				
			||||||
    @type = "numeric" | 
					    @type = "numeric" | 
				
			||||||
    @page = page | 
					    @page = page | 
				
			||||||
    @width = 3 | 
					    @width = 3 | 
				
			||||||
    @inferred_check_answers_value = { | 
					    @inferred_check_answers_value = hsh[:inferred_check_answers_value] | 
				
			||||||
      "condition" => { "age5_known" => 1 }, | 
					    @hidden_in_check_answers = hsh[:hidden_in_check_answers] | 
				
			||||||
      "value" => "Not known", | 
					    @check_answers_card_number = hsh[:check_answers_card_number] | 
				
			||||||
    } | 
					 | 
				
			||||||
    @check_answers_card_number = 5 | 
					 | 
				
			||||||
  end | 
					  end | 
				
			||||||
end | 
					end | 
				
			||||||
 | 
				
			|||||||
@ -1,16 +1,13 @@ | 
				
			|||||||
class Form::Sales::Questions::Person4Age < ::Form::Question | 
					class Form::Sales::Questions::Person4Age < ::Form::Question | 
				
			||||||
  def initialize(id, hsh, page) | 
					  def initialize(id, hsh, page) | 
				
			||||||
    super | 
					    super | 
				
			||||||
    @id = "age6" | 
					 | 
				
			||||||
    @check_answer_label = "Person 4’s age" | 
					    @check_answer_label = "Person 4’s age" | 
				
			||||||
    @header = "Age" | 
					    @header = "Age" | 
				
			||||||
    @type = "numeric" | 
					    @type = "numeric" | 
				
			||||||
    @page = page | 
					    @page = page | 
				
			||||||
    @width = 3 | 
					    @width = 3 | 
				
			||||||
    @inferred_check_answers_value = { | 
					    @inferred_check_answers_value = hsh[:inferred_check_answers_value] | 
				
			||||||
      "condition" => { "age6_known" => 1 }, | 
					    @hidden_in_check_answers = hsh[:hidden_in_check_answers] | 
				
			||||||
      "value" => "Not known", | 
					    @check_answers_card_number = hsh[:check_answers_card_number] | 
				
			||||||
    } | 
					 | 
				
			||||||
    @check_answers_card_number = 6 | 
					 | 
				
			||||||
  end | 
					  end | 
				
			||||||
end | 
					end | 
				
			||||||
 | 
				
			|||||||
					Loading…
					
					
				
		Reference in new issue