validates_timeliness/lib/validates_timeliness/helper_methods.rb
Adam Meehan 6e67d45274 Validation support for ActiveModel::Validations without a shim
move validation helpers into ActiveModel::Validations for default base support
add check if attribute methods shim is being used
refactor specs for helper and attribute methods separation
more mongoid workarounds due to incorrect use of AS::Concern
2010-09-29 08:09:43 +10:00

29 lines
817 B
Ruby

module ActiveModel
module Validations
module HelperMethods
def validates_date(*attr_names)
timeliness_validation_for attr_names, :date
end
def validates_time(*attr_names)
timeliness_validation_for attr_names, :time
end
def validates_datetime(*attr_names)
timeliness_validation_for attr_names, :datetime
end
def timeliness_validation_for(attr_names, type)
options = _merge_attributes(attr_names).merge(:type => type)
if respond_to?(:timeliness_validated_attributes)
self.timeliness_validated_attributes ||= []
self.timeliness_validated_attributes += (attr_names - self.timeliness_validated_attributes)
end
validates_with ValidatesTimeliness::Validator, options
end
end
end
end