Page MenuHomePhorge

D773.1775536606.diff
No OneTemporary

Authored By
Unknown
Size
2 KB
Referenced Files
None
Subscribers
None

D773.1775536606.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
@@ -596,7 +596,11 @@
$event = $this->get_event_from_invitation($request);
// find the event in calendar
- $existing = $this->find_event_by_uid($event['uid']);
+ if (array_key_exists('uid', $event)) {
+ $existing = $this->find_event_by_uid($event['uid']);
+ } else {
+ $existing = $this->find_event_by_uid($event->uID);
+ }
/*
switch ($status) {
case 'ACCEPTED': $event['free_busy'] = 'busy'; break;
@@ -665,7 +669,11 @@
// as it's expected by the specification. Server
// should delete an event in such a case, but we
// keep the event copy with appropriate attendee status instead.
- return empty($status) ? null : $this->serverId($event['uid'], $folder);
+ return empty($status) ? null : (
+ array_key_exists('uid', $event) ?
+ $this->serverId($event['uid'], $folder) :
+ $this->serverId($event->uID, $folder)
+ );
}
/**
@@ -684,6 +692,14 @@
return $event;
}
+ $collection = new Syncroton_Model_SyncCollection(
+ array('collectionId' => $request->collectionId)
+ );
+
+ if ($event = $this->getEntry($collection, $request->requestId)) {
+ return $event;
+ }
+
throw new Syncroton_Exception_Status_MeetingResponse(Syncroton_Exception_Status_MeetingResponse::INVALID_REQUEST);
}
@@ -723,8 +739,10 @@
$this->update_attendee_status($old, $status);
- if ($event['free_busy']) {
- $old['free_busy'] = $event['free_busy'];
+ if (array_key_exists('free_busy', $event)) {
+ if ($event['free_busy']) {
+ $old['free_busy'] = $event['free_busy'];
+ }
}
// Updating an existing event is most-likely a response

File Metadata

Mime Type
text/plain
Expires
Tue, Apr 7, 4:36 AM (18 h, 16 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
18841084
Default Alt Text
D773.1775536606.diff (2 KB)

Event Timeline