class AgeValidator

Public Class Methods

default_options() click to toggle source
   # File lib/age_validator.rb
14 def self.default_options
15   @@default_options
16 end
minimum_age(options = {}) click to toggle source
  # File lib/age_validator.rb
4 def self.minimum_age(options = {})
5   options = default_options.merge(options)
6 
7   options[:minimum] || 18
8 end
valid?(value, options = {}) click to toggle source
   # File lib/age_validator.rb
10 def self.valid?(value, options = {})
11   (Date.new(1900)..Time.now.years_ago(minimum_age(options)).to_date).cover? value
12 end

Public Instance Methods

validate_each(record, attribute, value) click to toggle source
   # File lib/age_validator.rb
18 def validate_each(record, attribute, value)
19   options = @@default_options.merge(self.options)
20 
21   unless self.class.valid?(value, self.options)
22     record.errors.add(attribute, options[:message] || :invalid)
23   end
24 end