Sha256: 0c94cada01c4772ae02ffcb842c19bc4c0d40beaf67929be471b2b9f25611701
Contents?: true
Size: 857 Bytes
Versions: 13
Compression:
Stored size: 857 Bytes
Contents
# Validations for both concepts and labels module FirstLevelObjectValidations extend ActiveSupport::Concern included do validate :distinct_versions, on: :create # FIXME: on: :create? validate :origin_has_to_be_escaped end def origin_has_to_be_escaped unless Origin.new(origin).valid? errors.add :origin, I18n.t('txt.models.concept.origin_error') end end def distinct_versions query = self.class.by_origin(origin) existing_total = query.count if existing_total >= 2 errors.add :base, I18n.t('txt.models.concept.version_error', origin: origin) elsif existing_total == 1 unless (query.published.count == 0 && published?) or (query.published.count == 1 && !published?) errors.add :base, I18n.t('txt.models.concept.version_error', origin: origin) end end end end
Version data entries
13 entries across 13 versions & 1 rubygems