Page MenuHomePhorge

D4570.1775205532.diff
No OneTemporary

Authored By
Unknown
Size
1 KB
Referenced Files
None
Subscribers
None

D4570.1775205532.diff

diff --git a/lib/kolab_sync_data_calendar.php b/lib/kolab_sync_data_calendar.php
--- a/lib/kolab_sync_data_calendar.php
+++ b/lib/kolab_sync_data_calendar.php
@@ -803,13 +803,21 @@
throw new Syncroton_Exception_Status_MeetingResponse(Syncroton_Exception_Status_MeetingResponse::INVALID_REQUEST);
}
- if ($event['free_busy']) {
- $old['free_busy'] = $event['free_busy'];
+ // Update event properties
+ // FIXME: Can we be smarter here? Should we update everything? What about e.g. new attendees?
+ if (isset($event['sequence']) && $event['sequence'] > $old['sequence']) {
+ $props = ['start', 'end', 'title', 'description', 'location', 'free_busy', 'sequence'];
+ foreach ($props as $prop) {
+ if (isset($event[$prop])) {
+ $old[$prop] = $event[$prop];
+ }
+ }
+ }
+ else {
+ // Updating an existing event is most-likely a response
+ // to an iTip request with bumped SEQUENCE
+ $old['sequence'] += 1;
}
-
- // Updating an existing event is most-likely a response
- // to an iTip request with bumped SEQUENCE
- $old['sequence'] += 1;
// Copy new custom properties
if (!empty($event['x-custom'])) {

File Metadata

Mime Type
text/plain
Expires
Fri, Apr 3, 8:38 AM (1 d, 14 h ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
18823286
Default Alt Text
D4570.1775205532.diff (1 KB)

Event Timeline