Sha256: 1a9a7c249b1869224aeb03424b43052d08be92dc12e29edba6ee698016f60e7e
Contents?: true
Size: 717 Bytes
Versions: 6
Compression:
Stored size: 717 Bytes
Contents
# == usage: # in your model, add: # validates :id_number, must_be_present => true, is_a_curacao_id_number => true; class IsACuracaoIdNumberValidator < ActiveModel::EachValidator def validate_each(record, attribute, value) if value =~ /^[0-9]{10}$/ year = value[0..3].to_i month = value[4..5].to_i day = value[6..7].to_i number= value[8..9].to_i begin DateTime.civil(year, month, day) rescue ArgumentError record.errors.add(attribute.to_sym, options[:message] || "too_short" ) end else record.errors.add(attribute.to_sym, options[:message] || "not_a_number" ) end end end #"moet bestaan uit tien cijfers (bijvoorbeeld 1983040812)."
Version data entries
6 entries across 6 versions & 1 rubygems