1.1 --- a/imiptools/client.py Fri Dec 15 23:23:24 2017 +0100
1.2 +++ b/imiptools/client.py Fri Dec 15 23:32:25 2017 +0100
1.3 @@ -962,7 +962,16 @@
1.4 themself.
1.5 """
1.6
1.7 - parts = [self.object_to_part("PUBLISH", self.obj)]
1.8 + parts = []
1.9 +
1.10 + # Do not publish the event if it is a recurrence and is cancelled or
1.11 + # rescheduled.
1.12 +
1.13 + main = self.obj.get_recurrenceid() and self.obj.get_main_period() or None
1.14 +
1.15 + if not main or (not main in all_unscheduled and not main in all_rescheduled):
1.16 + parts += [self.object_to_part("PUBLISH", self.obj)]
1.17 +
1.18 parts += self.get_rescheduled_parts(all_unscheduled, "CANCEL")
1.19 parts += self.get_rescheduled_parts(all_rescheduled, "PUBLISH")
1.20 parts += self.get_rescheduled_parts(to_add, "ADD")