diff options
Diffstat (limited to 'lib/parsedate.rb')
-rw-r--r-- | lib/parsedate.rb | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/lib/parsedate.rb b/lib/parsedate.rb index 5ffd2da47c..e27735b755 100644 --- a/lib/parsedate.rb +++ b/lib/parsedate.rb @@ -9,7 +9,7 @@ module ParseDate 'thu' => 4, 'fri' => 5, 'sat' => 6 } DAYPAT = DAYS.keys.join('|') - def parsedate(date) + def parsedate(date, guess=false) # part of ISO 8601 # yyyy-mm-dd | yyyy-mm | yyyy # date hh:mm:ss | date Thh:mm:ss @@ -63,6 +63,19 @@ module ParseDate mon = MONTHS[$2.downcase] year = $3.to_i end + if guess + if year < 100 + if year >= 69 + year += 1900 + else + year += 2000 + end + end + elsif date.sub!(/(\d+)-(#{MONTHPAT})-(\d+)/i, ' ') + mday = $1.to_i + mon = MONTHS[$2.downcase] + year = $3.to_i + end return year, mon, mday, hour, min, sec, zone, wday end |