Sha256: 400a959a29fc2537558e1475d891f06b63ba0c254db4e3426c948b04ead03204
Contents?: true
Size: 479 Bytes
Versions: 11
Compression:
Stored size: 479 Bytes
Contents
class HexValidator < ActiveModel::EachValidator def validate_each(record, attribute, value) return if valid?(value.to_s) record.errors[attribute] << (options[:message] || I18n.t('active_validation.errors.messages.hex')) end private def valid_format?(value) value =~ /^#?([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/ end def valid_length?(value) value.present? end def valid?(value) valid_length?(value) && valid_format?(value) end end
Version data entries
11 entries across 11 versions & 1 rubygems