From a674089c00bfb31a7a08c23f988af9c9e73650b8 Mon Sep 17 00:00:00 2001 From: Adam Meehan Date: Tue, 22 Jul 2008 10:13:52 +1000 Subject: [PATCH] return Date object for date type timeliness_date_time_parse method --- lib/validates_timeliness/validations.rb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/validates_timeliness/validations.rb b/lib/validates_timeliness/validations.rb index 491ce93..d003c46 100644 --- a/lib/validates_timeliness/validations.rb +++ b/lib/validates_timeliness/validations.rb @@ -25,11 +25,10 @@ module ValidatesTimeliness # Override this method to use any date parsing algorithm you like such as # Chronic. Just return nil for an invalid value and a Time object for a # valid parsed value. - # def timeliness_date_time_parse(raw_value, type, strict=true) return raw_value.to_time if raw_value.acts_like?(:time) || raw_value.is_a?(Date) - time_array = ValidatesTimeliness::Formats.extract_date_time_values(raw_value, type, strict) + time_array = ValidatesTimeliness::Formats.parse(raw_value, type, strict) raise if time_array.nil? if type == :time @@ -38,7 +37,8 @@ module ValidatesTimeliness end # Date.new enforces days per month, unlike Time - Date.new(*time_array[0..2]) unless type == :time + date = Date.new(*time_array[0..2]) unless type == :time + return date if type == :date # Check time part, and return time object Time.local(*time_array) rescue DateTime.new(*time_array[0..5])