From 4278e417a787205f1dc6fe4ce23fda959a48b5c9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Enrique=20J=2E=20Hern=C3=A1ndez=20Blasco?= Date: Thu, 7 Jan 2016 01:13:32 +0100 Subject: [PATCH] oc-calendar: Enable editor role When Outlook sets the editor role, the FreeBusyDetailed and FreeBusySimple right flags are set as Full Details are available. When we store this information in SOGo, the SOGoCalendarRole_PublicModifier, SOGoCalendarRole_PrivateModifier and SOGoCalendarRole_ConfidentialModifier are stored as well as the free busy related roles, but as [SOGoAppointmentFolder aclsForUser:forObjectAtPath] only returns the highest access rights, we have to set as well the FreeBusy flags. More details on [MS-OXCPERM] Section 2.2.6 --- OpenChange/MAPIStoreCalendarFolder.m | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/OpenChange/MAPIStoreCalendarFolder.m b/OpenChange/MAPIStoreCalendarFolder.m index 5c9d70b39..fc4ec5b76 100644 --- a/OpenChange/MAPIStoreCalendarFolder.m +++ b/OpenChange/MAPIStoreCalendarFolder.m @@ -121,7 +121,7 @@ if ([roles containsObject: SOGoCalendarRole_PublicModifier] && [roles containsObject: SOGoCalendarRole_PrivateModifier] && [roles containsObject: SOGoCalendarRole_ConfidentialModifier]) - rights |= RightsReadItems | RightsEditAll | RightsEditOwn; + rights |= RightsReadItems | RightsEditAll | RightsEditOwn | RightsFreeBusySimple | RightsFreeBusyDetailed; else if ([roles containsObject: SOGoCalendarRole_PublicViewer] && [roles containsObject: SOGoCalendarRole_PrivateViewer] && [roles containsObject: SOGoCalendarRole_ConfidentialViewer])