class Crm::Helpers::Validators::CrmMultienumValidator
Public Instance Methods
validate_each(record, attribute, values)
click to toggle source
# File lib/crm/helpers/validators/crm_multienum_validator.rb, line 7 def validate_each(record, attribute, values) return unless a_multienum?(record, attribute, values) definition = crm_attribute_definition(record, attribute) valid_values = definition['valid_values'] invalid_values = values.reject { |value| value.in?(valid_values) } return if invalid_values.blank? message = I18n.t( 'activerecord.errors.messages.cannot_contain_values', values: invalid_values.join(', ') ) record.errors.add(attribute, message) end
Protected Instance Methods
a_multienum?(record, attribute, values)
click to toggle source
# File lib/crm/helpers/validators/crm_multienum_validator.rb, line 25 def a_multienum?(record, attribute, values) unless values.is_a?(Array) record.errors.add( attribute, I18n.t('activerecord.errors.messages.not_a_list') ) return false end true end