diff --git a/app/models/form/lettings/pages/first_time_property_let_as_social_housing.rb b/app/models/form/lettings/pages/first_time_property_let_as_social_housing.rb index fc65488e2..a859f9ce1 100644 --- a/app/models/form/lettings/pages/first_time_property_let_as_social_housing.rb +++ b/app/models/form/lettings/pages/first_time_property_let_as_social_housing.rb @@ -2,7 +2,7 @@ class Form::Lettings::Pages::FirstTimePropertyLetAsSocialHousing < ::Form::Page def initialize(id, hsh, subsection) super @id = "first_time_property_let_as_social_housing" - @depends_on = [{ "renewal" => 0 }] + @depends_on = [{ "not_renewal?" => true }] end def questions diff --git a/app/models/form/lettings/pages/new_build_handover_date.rb b/app/models/form/lettings/pages/new_build_handover_date.rb index 7b13c7727..cbbafb61a 100644 --- a/app/models/form/lettings/pages/new_build_handover_date.rb +++ b/app/models/form/lettings/pages/new_build_handover_date.rb @@ -2,11 +2,7 @@ class Form::Lettings::Pages::NewBuildHandoverDate < ::Form::Page def initialize(id, hsh, subsection) super @id = "new_build_handover_date" - @depends_on = [ - { "renewal" => 0, "rsnvac" => 15 }, - { "renewal" => 0, "rsnvac" => 16 }, - { "renewal" => 0, "rsnvac" => 17 }, - ] + @depends_on = [{ "not_renewal?" => true, "has_first_let_vacancy_reason?" => true }] end def questions diff --git a/app/models/form/lettings/pages/property_building_type.rb b/app/models/form/lettings/pages/property_building_type.rb index aec9fa4a9..ff3d76e0b 100644 --- a/app/models/form/lettings/pages/property_building_type.rb +++ b/app/models/form/lettings/pages/property_building_type.rb @@ -2,7 +2,7 @@ class Form::Lettings::Pages::PropertyBuildingType < ::Form::Page def initialize(id, hsh, subsection) super @id = "property_building_type" - @depends_on = [{ "needstype" => 1 }] + @depends_on = [{ "is_general_needs?" => true }] end def questions diff --git a/app/models/form/lettings/pages/property_local_authority.rb b/app/models/form/lettings/pages/property_local_authority.rb index 711d908d8..2c64e3628 100644 --- a/app/models/form/lettings/pages/property_local_authority.rb +++ b/app/models/form/lettings/pages/property_local_authority.rb @@ -2,7 +2,7 @@ class Form::Lettings::Pages::PropertyLocalAuthority < ::Form::Page def initialize(id, hsh, subsection) super @id = "property_local_authority" - @depends_on = [{ "is_la_inferred" => false, "needstype" => 1 }] + @depends_on = [{ "is_la_inferred" => false, "is_general_needs?" => true }] end def questions diff --git a/app/models/form/lettings/pages/property_major_repairs.rb b/app/models/form/lettings/pages/property_major_repairs.rb index 54a32a1ad..a1f415b4e 100644 --- a/app/models/form/lettings/pages/property_major_repairs.rb +++ b/app/models/form/lettings/pages/property_major_repairs.rb @@ -2,18 +2,7 @@ class Form::Lettings::Pages::PropertyMajorRepairs < ::Form::Page def initialize(id, hsh, subsection) super @id = "property_major_repairs" - @depends_on = [ - { "renewal" => 0, "rsnvac" => 5 }, - { "renewal" => 0, "rsnvac" => 6 }, - { "renewal" => 0, "rsnvac" => 8 }, - { "renewal" => 0, "rsnvac" => 9 }, - { "renewal" => 0, "rsnvac" => 10 }, - { "renewal" => 0, "rsnvac" => 11 }, - { "renewal" => 0, "rsnvac" => 12 }, - { "renewal" => 0, "rsnvac" => 13 }, - { "renewal" => 0, "rsnvac" => 18 }, - { "renewal" => 0, "rsnvac" => 19 }, - ] + @depends_on = [{ "not_renewal?" => true, "vacancy_reason_not_renewal_or_first_let?" => true }] end def questions diff --git a/app/models/form/lettings/pages/property_number_of_bedrooms.rb b/app/models/form/lettings/pages/property_number_of_bedrooms.rb index 89c056e00..c3a1a2365 100644 --- a/app/models/form/lettings/pages/property_number_of_bedrooms.rb +++ b/app/models/form/lettings/pages/property_number_of_bedrooms.rb @@ -2,7 +2,7 @@ class Form::Lettings::Pages::PropertyNumberOfBedrooms < ::Form::Page def initialize(id, hsh, subsection) super @id = "property_number_of_bedrooms" - @depends_on = [{ "needstype" => 1 }] + @depends_on = [{ "is_general_needs?" => true }] end def questions diff --git a/app/models/form/lettings/pages/property_number_of_times_relet_not_social_let.rb b/app/models/form/lettings/pages/property_number_of_times_relet_not_social_let.rb index 6061fcaaa..d553c919c 100644 --- a/app/models/form/lettings/pages/property_number_of_times_relet_not_social_let.rb +++ b/app/models/form/lettings/pages/property_number_of_times_relet_not_social_let.rb @@ -2,7 +2,7 @@ class Form::Lettings::Pages::PropertyNumberOfTimesReletNotSocialLet < ::Form::Pa def initialize(id, hsh, subsection) super @id = "property_number_of_times_relet_not_social_let" - @depends_on = [{ "first_time_property_let_as_social_housing" => 0, "renewal" => 0 }] + @depends_on = [{ "first_time_property_let_as_social_housing" => 0, "not_renewal?" => true }] end def questions diff --git a/app/models/form/lettings/pages/property_number_of_times_relet_social_let.rb b/app/models/form/lettings/pages/property_number_of_times_relet_social_let.rb index f1a136249..e2c2365b8 100644 --- a/app/models/form/lettings/pages/property_number_of_times_relet_social_let.rb +++ b/app/models/form/lettings/pages/property_number_of_times_relet_social_let.rb @@ -2,7 +2,7 @@ class Form::Lettings::Pages::PropertyNumberOfTimesReletSocialLet < ::Form::Page def initialize(id, hsh, subsection) super @id = "property_number_of_times_relet_social_let" - @depends_on = [{ "first_time_property_let_as_social_housing" => 1, "renewal" => 0 }] + @depends_on = [{ "first_time_property_let_as_social_housing" => 1, "not_renewal?" => true }] end def questions diff --git a/app/models/form/lettings/pages/property_postcode.rb b/app/models/form/lettings/pages/property_postcode.rb index 720cd3106..a40d4140f 100644 --- a/app/models/form/lettings/pages/property_postcode.rb +++ b/app/models/form/lettings/pages/property_postcode.rb @@ -2,7 +2,7 @@ class Form::Lettings::Pages::PropertyPostcode < ::Form::Page def initialize(id, hsh, subsection) super @id = "property_postcode" - @depends_on = [{ "needstype" => 1 }] + @depends_on = [{ "is_general_needs?" => true }] end def questions diff --git a/app/models/form/lettings/pages/property_unit_type.rb b/app/models/form/lettings/pages/property_unit_type.rb index 6db4db4e4..727e740cd 100644 --- a/app/models/form/lettings/pages/property_unit_type.rb +++ b/app/models/form/lettings/pages/property_unit_type.rb @@ -2,7 +2,7 @@ class Form::Lettings::Pages::PropertyUnitType < ::Form::Page def initialize(id, hsh, subsection) super @id = "property_unit_type" - @depends_on = [{ "needstype" => 1 }] + @depends_on = [{ "is_general_needs?" => true }] end def questions diff --git a/app/models/form/lettings/pages/property_vacancy_reason_first_let.rb b/app/models/form/lettings/pages/property_vacancy_reason_first_let.rb index 3a14827de..79679dfd9 100644 --- a/app/models/form/lettings/pages/property_vacancy_reason_first_let.rb +++ b/app/models/form/lettings/pages/property_vacancy_reason_first_let.rb @@ -2,7 +2,7 @@ class Form::Lettings::Pages::PropertyVacancyReasonFirstLet < ::Form::Page def initialize(id, hsh, subsection) super @id = "property_vacancy_reason_first_let" - @depends_on = [{ "first_time_property_let_as_social_housing" => 1, "renewal" => 0 }] + @depends_on = [{ "first_time_property_let_as_social_housing" => 1, "not_renewal?" => true }] end def questions diff --git a/app/models/form/lettings/pages/property_vacancy_reason_not_first_let.rb b/app/models/form/lettings/pages/property_vacancy_reason_not_first_let.rb index 1b2c147ed..c76067626 100644 --- a/app/models/form/lettings/pages/property_vacancy_reason_not_first_let.rb +++ b/app/models/form/lettings/pages/property_vacancy_reason_not_first_let.rb @@ -2,7 +2,7 @@ class Form::Lettings::Pages::PropertyVacancyReasonNotFirstLet < ::Form::Page def initialize(id, hsh, subsection) super @id = "property_vacancy_reason_not_first_let" - @depends_on = [{ "first_time_property_let_as_social_housing" => 0, "renewal" => 0 }] + @depends_on = [{ "first_time_property_let_as_social_housing" => 0, "not_renewal?" => true }] end def questions diff --git a/app/models/form/lettings/pages/property_wheelchair_accessible.rb b/app/models/form/lettings/pages/property_wheelchair_accessible.rb index e5d673ef0..3b2b226b6 100644 --- a/app/models/form/lettings/pages/property_wheelchair_accessible.rb +++ b/app/models/form/lettings/pages/property_wheelchair_accessible.rb @@ -2,7 +2,7 @@ class Form::Lettings::Pages::PropertyWheelchairAccessible < ::Form::Page def initialize(id, hsh, subsection) super @id = "property_wheelchair_accessible" - @depends_on = [{ "is_supported_housing?" => false }] + @depends_on = [{ "is_general_needs?" => true }] end def questions diff --git a/app/models/form/lettings/pages/void_or_renewal_date.rb b/app/models/form/lettings/pages/void_or_renewal_date.rb index 1ea4ea982..9b42e15b2 100644 --- a/app/models/form/lettings/pages/void_or_renewal_date.rb +++ b/app/models/form/lettings/pages/void_or_renewal_date.rb @@ -2,18 +2,7 @@ class Form::Lettings::Pages::VoidOrRenewalDate < ::Form::Page def initialize(id, hsh, subsection) super @id = "void_or_renewal_date" - @depends_on = [ - { "renewal" => 0, "rsnvac" => 5 }, - { "renewal" => 0, "rsnvac" => 6 }, - { "renewal" => 0, "rsnvac" => 8 }, - { "renewal" => 0, "rsnvac" => 9 }, - { "renewal" => 0, "rsnvac" => 10 }, - { "renewal" => 0, "rsnvac" => 11 }, - { "renewal" => 0, "rsnvac" => 12 }, - { "renewal" => 0, "rsnvac" => 13 }, - { "renewal" => 0, "rsnvac" => 18 }, - { "renewal" => 0, "rsnvac" => 19 }, - ] + @depends_on = [{ "not_renewal?" => true, "vacancy_reason_not_renewal_or_first_let?" => true }] end def questions diff --git a/app/models/lettings_log.rb b/app/models/lettings_log.rb index 4524ead12..280818d92 100644 --- a/app/models/lettings_log.rb +++ b/app/models/lettings_log.rb @@ -213,6 +213,10 @@ class LettingsLog < Log needstype == 2 end + def supported_housing_and_renewal? + is_supported_housing? && is_renewal? + end + def has_hbrentshortfall? # 1: Yes hbrentshortfall == 1 @@ -287,6 +291,10 @@ class LettingsLog < Log [15, 16, 17].include?(rsnvac) end + def vacancy_reason_not_renewal_or_first_let? + [5, 6, 8, 9, 10, 11, 12, 13, 18, 19].include? rsnvac + end + def previous_tenancy_was_temporary? # 4: Tied housing or renting with job # 6: Supported housing