diff --git a/app/models/validations/date_validations.rb b/app/models/validations/date_validations.rb index ceec8ed9a..3823b3dd2 100644 --- a/app/models/validations/date_validations.rb +++ b/app/models/validations/date_validations.rb @@ -84,15 +84,6 @@ private @second_collection_end_date ||= FormHandler.instance.forms.map { |_name, form| form.end_date }.compact.max end - def date_valid?(question, record) - if record[question].is_a?(ActiveSupport::TimeWithZone) && record[question].year.zero? - record.errors.add question, I18n.t("validations.date.invalid_date") - false - else - true - end - end - def is_rsnvac_first_let?(record) [15, 16, 17].include?(record["rsnvac"]) end diff --git a/app/models/validations/sales/setup_validations.rb b/app/models/validations/sales/setup_validations.rb index 0e7a759ee..22b686ee5 100644 --- a/app/models/validations/sales/setup_validations.rb +++ b/app/models/validations/sales/setup_validations.rb @@ -1,6 +1,6 @@ module Validations::Sales::SetupValidations def validate_saledate(record) - return unless record.saledate + return unless record.saledate && date_valid?("saledate", record) unless Time.zone.local(2022, 4, 1) <= record.saledate && record.saledate < Time.zone.local(2023, 4, 1) record.errors.add :saledate, I18n.t("validations.setup.saledate.financial_year") diff --git a/app/models/validations/shared_validations.rb b/app/models/validations/shared_validations.rb index 2d7ac0c9e..ca01e3819 100644 --- a/app/models/validations/shared_validations.rb +++ b/app/models/validations/shared_validations.rb @@ -103,6 +103,15 @@ module Validations::SharedValidations end end + def date_valid?(question, record) + if record[question].is_a?(ActiveSupport::TimeWithZone) && record[question].year.zero? + record.errors.add question, I18n.t("validations.date.invalid_date") + false + else + true + end + end + private def person_is_partner?(relationship)