diff --git a/plugins/calendar/drivers/database/database_driver.php b/plugins/calendar/drivers/database/database_driver.php index 2f9dd4bb..522e9360 100644 --- a/plugins/calendar/drivers/database/database_driver.php +++ b/plugins/calendar/drivers/database/database_driver.php @@ -341,7 +341,7 @@ class database_driver extends calendar_driver $diff = $old_start_date != $new_start_date || $old_start_time != $new_start_time || $old_duration != $new_duration; // shifted or resized - if ($diff && $event['id'] != $master['id'] && ($old_start_date == $new_start_date || $old_duration == $new_duration)) { + if ($diff && ($old_start_date == $new_start_date || $old_duration == $new_duration)) { $event['start'] = $master['start'] + ($event['start'] - $old['start']); $event['end'] = $event['start'] + $new_duration; } diff --git a/plugins/calendar/drivers/kolab/kolab_driver.php b/plugins/calendar/drivers/kolab/kolab_driver.php index 3d60f826..14b4e1de 100644 --- a/plugins/calendar/drivers/kolab/kolab_driver.php +++ b/plugins/calendar/drivers/kolab/kolab_driver.php @@ -670,15 +670,17 @@ class kolab_driver extends calendar_driver $diff = $old_start_date != $new_start_date || $old_start_time != $new_start_time || $old_duration != $new_duration; // shifted or resized - if ($diff && $event['id'] != $master['id'] && ($old_start_date == $new_start_date || $old_duration == $new_duration)) { + if ($diff && ($old_start_date == $new_start_date || $old_duration == $new_duration)) { $event['start'] = $master['start'] + ($event['start'] - $old['start']); $event['end'] = $event['start'] + $new_duration; // remove fixed weekday, will be re-set to the new weekday in kolab_calendar::update_event() - if (strlen($event['recurrence']['BYDAY']) == 2) - unset($event['recurrence']['BYDAY']); - if ($old['recurrence']['BYMONTH'] == gmdate('n', $old['start'])) - unset($event['recurrence']['BYMONTH']); + if ($old_start_date != $new_start_date) { + if (strlen($event['recurrence']['BYDAY']) == 2) + unset($event['recurrence']['BYDAY']); + if ($old['recurrence']['BYMONTH'] == gmdate('n', $old['start'])) + unset($event['recurrence']['BYMONTH']); + } } $success = $storage->update_event($event);