33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
# File 'lib/validators/date_validator.rb', line 33
def validate_after_option(record, attribute, value, original_value)
date, value = date_for(record, value, options[:after])
return true unless date.present?
return true if value.present? && date.present? && (value && date && value >= date)
after_message = ": #{original_value} is not a valid value."
if options[:after] == :now || options[:after] == :today
after_message << " Date cannot be in the past"
elsif options[:after].respond_to?(:strftime)
after_message << " Date cannot be before #{options[:after]}"
elsif options[:after].is_a? Proc
after_message << " Date cannot be before #{options[:after].call(record)}"
elsif record.respond_to?(options[:after])
after_message << " Date cannot be before #{options[:after]}"
end
after_message
end
|