1.1 --- a/imip_manager.py Sun Mar 01 00:24:11 2015 +0100
1.2 +++ b/imip_manager.py Sun Mar 01 22:00:09 2015 +0100
1.3 @@ -42,8 +42,7 @@
1.4 from imiptools.period import add_day_start_points, add_empty_days, add_slots, \
1.5 convert_periods, get_freebusy_details, \
1.6 get_scale, have_conflict, get_slots, get_spans, \
1.7 - partition_by_day, remove_from_freebusy, update_freebusy, \
1.8 - _update_freebusy
1.9 + partition_by_day, remove_period, update_freebusy
1.10 from imiptools.profile import Preferences
1.11 import imip_store
1.12 import markup
1.13 @@ -137,7 +136,7 @@
1.14 def get_window_end(self):
1.15 return get_window_end(self.get_tzid(), self.get_window_size())
1.16
1.17 -class ManagerHandler(Handler, Common):
1.18 +class ManagerHandler(Common, Handler):
1.19
1.20 """
1.21 A content handler for use by the manager, as opposed to operating within the
1.22 @@ -193,7 +192,7 @@
1.23 # newer details (since the outgoing handler updates this user's
1.24 # free/busy details).
1.25
1.26 - _update_freebusy(freebusy,
1.27 + update_freebusy(freebusy,
1.28 self.obj.get_periods_for_freebusy(self.get_tzid(), self.get_window_end()),
1.29 self.obj.get_value("TRANSP") or "OPAQUE",
1.30 self.uid, self.recurrenceid)
1.31 @@ -392,13 +391,15 @@
1.32
1.33 def update_freebusy(self, uid, recurrenceid, obj):
1.34 freebusy = self.store.get_freebusy(self.user)
1.35 - update_freebusy(freebusy, self.user,
1.36 + update_freebusy(freebusy,
1.37 obj.get_periods_for_freebusy(self.get_tzid(), self.get_window_end()),
1.38 - obj.get_value("TRANSP"), uid, recurrenceid, self.store)
1.39 + obj.get_value("TRANSP"), uid, recurrenceid)
1.40 + self.store.set_freebusy(self.user, freebusy)
1.41
1.42 def remove_from_freebusy(self, uid, recurrenceid=None):
1.43 freebusy = self.store.get_freebusy(self.user)
1.44 - remove_from_freebusy(freebusy, self.user, uid, recurrenceid, self.store)
1.45 + remove_period(freebusy, uid, recurrenceid)
1.46 + self.store.set_freebusy(self.user, freebusy)
1.47
1.48 # Presentation methods.
1.49
1.50 @@ -532,7 +533,7 @@
1.51
1.52 node = ("VEVENT", {}, record)
1.53
1.54 - self.store.set_event(self.user, this_uid, node=node)
1.55 + self.store.set_event(self.user, this_uid, None, node=node)
1.56 self.store.queue_request(self.user, this_uid)
1.57
1.58 # Redirect to the object (or the first of the objects), where instead of
1.59 @@ -647,7 +648,7 @@
1.60 # Save single user events.
1.61
1.62 elif save:
1.63 - self.store.set_event(self.user, uid, node=obj.to_node())
1.64 + self.store.set_event(self.user, uid, None, node=obj.to_node())
1.65 self.update_freebusy(uid, None, obj=obj)
1.66 self.remove_request(uid)
1.67