From 169fc6ff43667987ce57804653e4b5b73aaf2d08 Mon Sep 17 00:00:00 2001 From: Raine Virta Date: Wed, 4 Feb 2009 23:36:22 +0200 Subject: remind plugin: added possibility to reference times that are the next day as hh:mm --- data/rbot/plugins/remind.rb | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) (limited to 'data/rbot') diff --git a/data/rbot/plugins/remind.rb b/data/rbot/plugins/remind.rb index 0d6e9ecc..e3f248ef 100644 --- a/data/rbot/plugins/remind.rb +++ b/data/rbot/plugins/remind.rb @@ -58,18 +58,19 @@ class RemindPlugin < Plugin else raise "invalid time string" end - when (/^(\d+):(\d+):(\d+)$/) + when (/^(\d+):(\d+)(?:\:(\d+))?$/) hour = $1.to_i min = $2.to_i sec = $3.to_i now = Time.now later = Time.mktime(now.year, now.month, now.day, hour, min, sec) - return later - now - when (/^(\d+):(\d+)$/) - hour = $1.to_i - min = $2.to_i - now = Time.now - later = Time.mktime(now.year, now.month, now.day, hour, min, now.sec) + + # if the given hour is earlier than current hour, given timestr + # must have been meant to be in the future + if hour < now.hour || hour <= now.hour && min < now.min + later += 60*60*24 + end + return later - now when (/^(\d+):(\d+)(am|pm)$/) hour = $1.to_i -- cgit v1.2.3