diff --git a/plugins/calendar/drivers/database/database_driver.php b/plugins/calendar/drivers/database/database_driver.php index 8c22bb0a..0038218c 100644 --- a/plugins/calendar/drivers/database/database_driver.php +++ b/plugins/calendar/drivers/database/database_driver.php @@ -299,7 +299,7 @@ class database_driver extends calendar_driver $old = $this->get_event($event); // increment sequence number - if ($old['sequence']) + if ($old['sequence'] && empty($event['sequence'])) $event['sequence'] = max($event['sequence'], $old['sequence']+1); // modify a recurring event, check submitted savemode to do the right things diff --git a/plugins/calendar/drivers/kolab/kolab_driver.php b/plugins/calendar/drivers/kolab/kolab_driver.php index 3e0b8b0b..516452fb 100644 --- a/plugins/calendar/drivers/kolab/kolab_driver.php +++ b/plugins/calendar/drivers/kolab/kolab_driver.php @@ -370,8 +370,10 @@ class kolab_driver extends calendar_driver */ public function move_event($event) { - if (($storage = $this->calendars[$event['calendar']]) && ($ev = $storage->get_event($event['id']))) + if (($storage = $this->calendars[$event['calendar']]) && ($ev = $storage->get_event($event['id']))) { + unset($ev['sequence']); return $this->update_event($event + $ev); + } return false; } @@ -384,8 +386,10 @@ class kolab_driver extends calendar_driver */ public function resize_event($event) { - if (($storage = $this->calendars[$event['calendar']]) && ($ev = $storage->get_event($event['id']))) + if (($storage = $this->calendars[$event['calendar']]) && ($ev = $storage->get_event($event['id']))) { + unset($ev['sequence']); return $this->update_event($event + $ev); + } return false; } diff --git a/plugins/libkolab/lib/kolab_format_xcal.php b/plugins/libkolab/lib/kolab_format_xcal.php index ff10a100..34f2d81c 100644 --- a/plugins/libkolab/lib/kolab_format_xcal.php +++ b/plugins/libkolab/lib/kolab_format_xcal.php @@ -237,7 +237,8 @@ abstract class kolab_format_xcal extends kolab_format parent::set($object); // increment sequence on updates - $object['sequence'] = !$is_new ? $this->obj->sequence()+1 : 0; + if (empty($object['sequence'])) + $object['sequence'] = !$is_new ? $this->obj->sequence()+1 : 0; $this->obj->setSequence($object['sequence']); $this->obj->setSummary($object['title']);