1.1 --- a/imip_manager.py Mon Feb 09 14:37:21 2015 +0100
1.2 +++ b/imip_manager.py Mon Feb 09 15:11:15 2015 +0100
1.3 @@ -31,8 +31,7 @@
1.4 sys.path.append(LIBRARY_PATH)
1.5
1.6 from imiptools.content import Handler
1.7 -from imiptools.data import get_address, get_uri, make_freebusy, parse_object, \
1.8 - Object, to_part
1.9 +from imiptools.data import get_address, get_uri, make_freebusy, Object, to_part
1.10 from imiptools.dates import format_datetime, format_time, get_date, get_datetime, \
1.11 get_datetime_item, get_default_timezone, \
1.12 get_end_of_day, get_start_of_day, get_start_of_next_day, \
1.13 @@ -256,14 +255,8 @@
1.14 if self.objects.has_key(uid):
1.15 return self.objects[uid]
1.16
1.17 - f = uid and self.store.get_event(self.user, uid) or None
1.18 -
1.19 - if not f:
1.20 - return None
1.21 -
1.22 - fragment = parse_object(f, "utf-8")
1.23 + fragment = uid and self.store.get_event(self.user, uid) or None
1.24 obj = self.objects[uid] = fragment and Object(fragment)
1.25 -
1.26 return obj
1.27
1.28 def _get_requests(self):
2.1 --- a/imip_store.py Mon Feb 09 14:37:21 2015 +0100
2.2 +++ b/imip_store.py Mon Feb 09 15:11:15 2015 +0100
2.3 @@ -21,7 +21,7 @@
2.4
2.5 from datetime import datetime
2.6 from imiptools.config import STORE_DIR, PUBLISH_DIR
2.7 -from imiptools.data import make_calendar, to_stream
2.8 +from imiptools.data import make_calendar, parse_object, to_stream
2.9 from imiptools.filesys import fix_permissions, FileBase
2.10 from os.path import exists, isfile, join
2.11 from os import listdir, remove
2.12 @@ -51,7 +51,11 @@
2.13 if not filename or not exists(filename):
2.14 return None
2.15
2.16 - return open(filename) or None
2.17 + f = open(filename, "rb")
2.18 + try:
2.19 + return parse_object(f, "utf-8")
2.20 + finally:
2.21 + f.close()
2.22
2.23 def set_event(self, user, uid, node):
2.24
3.1 --- a/imiptools/content.py Mon Feb 09 14:37:21 2015 +0100
3.2 +++ b/imiptools/content.py Mon Feb 09 15:11:15 2015 +0100
3.3 @@ -334,8 +334,7 @@
3.4 given 'user' and for the given 'objtype'.
3.5 """
3.6
3.7 - f = self.store.get_event(user, self.uid)
3.8 - fragment = f and parse_object(f, "utf-8")
3.9 + fragment = self.store.get_event(user, self.uid)
3.10 return fragment and Object(fragment)
3.11
3.12 def have_new_object(self, attendee, obj=None):