diff options
Diffstat (limited to 'sublab_project/calendarium')
-rw-r--r-- | sublab_project/calendarium/calendarium.py | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/sublab_project/calendarium/calendarium.py b/sublab_project/calendarium/calendarium.py index 4ffcfe4..9935ace 100644 --- a/sublab_project/calendarium/calendarium.py +++ b/sublab_project/calendarium/calendarium.py @@ -1,7 +1,7 @@ -import urllib2 import icalendar from dateutil.rrule import rrulestr + class Event(object): def __init__(self, name, description, start, end): self.name = name @@ -14,12 +14,12 @@ class Event(object): __name__, self.__class__.__name__, repr(self.name), repr(self.start), repr(self.end)) + class Calendarium(object): def __init__(self, string): """ Loads a calendar from the string and provides a nice API to it. """ - self.calendar = icalendar.Calendar.from_string(string) def get_events(self, after, before): @@ -67,10 +67,8 @@ if __name__ == '__main__': from datetime import datetime import urllib2 - calendar_request = urllib2.urlopen('https://sublab.org:5232/calendars/events') - calendar = Calendarium(calendar_request.read()) - calendar_request.close() - + response = urllib2.urlopen('https://sublab.org:5232/calendars/events') + calendar = Calendarium(response.read()) now = datetime.now() events = list(calendar.get_events(now-relativedelta(days=1), now+relativedelta(months=+2))) events.sort(key=lambda x:x.start) |