Software Freedom Law Center

Changeset 161

Show
Ignore:
Timestamp:
06/25/08 14:21:27 (4 months ago)
Author:
landon
Message:

Added minor date parsing, will parse commands in the format "On DAY:" and return the last DAY to have occurred

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/antimatter/luke/myplugs/libtracker/timeparser.py

    r160 r161  
    11"""The time parsing utilities""" 
    22 
     3import re 
    34from datetime import timedelta, date 
    45 
     
    67from myplugs.libtracker.dateutil.relativedelta import relativedelta 
    78 
    8 class TimeAdjustment(relativedelta): 
     9class TimeAdjustment(timedelta): 
    910 
    1011    adj_date = date.today() 
     
    3334 
    3435def msgparse(ievent): 
    35     identify(ievent) 
    36     reply = repr(parse(ievent.txt,fuzzy=True)) 
    37     ievent.reply(reply) 
    38  
    39 def identify(ievent): 
    40     pass 
     36    """ The main `parser` 
     37    INPUT: Ircevent """ 
     38    #First Type: 5 hours (assumed current day) 
     39    #Second Type: 1 AM to 5 PM 
     40    #Third Type: ON Sunday: 5 hours or so 
     41    #Fourth Type: ON Sunday: 1 AM to 5 PM 
     42    setdate = re.findall(r"on (\b\w+\b).?:", ievent.txt, re.I) 
     43    if (setdate): 
     44        day = setdate[0] 
     45        adjustment = timedelta(days=0) 
     46        weekdays = ['Monday','Tuesday','Wednesday','Thursday','Friday','Saturday','Sunday'] 
     47        if (day in weekdays): 
     48            adjustment = timedelta(days=7) 
     49        date = parse(day, fuzzy = True) - adjustment 
     50        reply = "Day to be used: " + date.ctime() 
     51        ievent.reply(reply) 

SFLC Main Page

[frdm] Support SFLC