diff --git a/SoObjects/Appointments/GNUmakefile b/SoObjects/Appointments/GNUmakefile index 7893f0d4b..f4fb6874a 100644 --- a/SoObjects/Appointments/GNUmakefile +++ b/SoObjects/Appointments/GNUmakefile @@ -6,6 +6,7 @@ WOBUNDLE_NAME = Appointments Appointments_PRINCIPAL_CLASS = SOGoAppointmentsProduct +# SOGoGroupAppointmentFolder.m Appointments_OBJC_FILES = \ Product.m \ NSArray+Appointments.m \ @@ -19,8 +20,8 @@ Appointments_OBJC_FILES = \ SOGoTaskObject.m \ SOGoAppointmentFolder.m \ SOGoAppointmentFolders.m \ - SOGoGroupAppointmentFolder.m \ SOGoFreeBusyObject.m \ + SOGoUserFolder+Appointments.m \ \ SOGoAptMailNotification.m \ SOGoAptMailInvitation.m \ diff --git a/SoObjects/Appointments/product.plist b/SoObjects/Appointments/product.plist index ce2616d71..d8a5652ac 100644 --- a/SoObjects/Appointments/product.plist +++ b/SoObjects/Appointments/product.plist @@ -30,9 +30,9 @@ "RespondToConfidentialRecords" = ( "Owner", "ConfidentialModifier", "ConfidentialResponder" ); }; }; - SOGoGroupAppointmentFolder = { - superclass = "SOGoAppointmentFolder"; - }; +// SOGoGroupAppointmentFolder = { +// superclass = "SOGoAppointmentFolder"; +// }; SOGoCalendarComponent = { superclass = "SOGoContentObject"; defaultRoles = { diff --git a/SoObjects/Mailer/product.plist b/SoObjects/Mailer/product.plist index b97c93e9b..6d013e679 100644 --- a/SoObjects/Mailer/product.plist +++ b/SoObjects/Mailer/product.plist @@ -43,7 +43,7 @@ "Delete Objects" = ( "Owner", "ObjectEraser" ); "WebDAV Access" = ( "Owner", "ObjectViewer" ); "ReadAcls" = ( "Owner", "MailAdministrator" ); - "SaveAcls" = ( "Owner", "MailAdministrator" ); + "Change Permissions" = ( "Owner", "MailAdministrator" ); }; }; /* SOGoSharedInboxFolder = { diff --git a/SoObjects/SOGo/DAVReportMap.plist b/SoObjects/SOGo/DAVReportMap.plist index 5481dcd07..7523eab85 100644 --- a/SoObjects/SOGo/DAVReportMap.plist +++ b/SoObjects/SOGo/DAVReportMap.plist @@ -10,6 +10,9 @@ "{urn:ietf:params:xml:ns:carddav}supported-collation-set" = davSupportedCollectionSet; + /* WebDAV ACL */ + "{DAV:}principal-match" = davPrincipalMatch; + /* Inverse DAV */ "{urn:inverse:params:xml:ns:inverse-dav}collection-query" = davCollectionQuery; diff --git a/SoObjects/SOGo/GNUmakefile b/SoObjects/SOGo/GNUmakefile index 29432aa3c..5ba08a0a8 100644 --- a/SoObjects/SOGo/GNUmakefile +++ b/SoObjects/SOGo/GNUmakefile @@ -17,6 +17,9 @@ TOOL_NAME = \ SOGo_VERSION=$(MAJOR_VERSION).$(MINOR_VERSION) +# SOGoCustomGroupFolder.h \ +# SOGoGroupsFolder.h \ +# SOGoGroupFolder.h SOGo_HEADER_FILES = \ SOGoCache.h \ SOGoObject.h \ @@ -24,28 +27,30 @@ SOGo_HEADER_FILES = \ SOGoFolder.h \ SOGoParentFolder.h \ SOGoUserFolder.h \ - SOGoGroupsFolder.h \ - SOGoGroupFolder.h \ - SOGoCustomGroupFolder.h \ \ LDAPUserManager.h \ LDAPSource.h \ SOGoDateFormatter.h \ SOGoPermissions.h \ - SOGoDAVRendererTypes.h \ iCalEntityObject+Utilities.h \ + NSArray+DAV.h \ NSArray+Utilities.h \ + NSCalendarDate+SOGo.h \ + NSDictionary+DAV.h \ NSDictionary+URL.h \ NSDictionary+Utilities.h \ - NSObject+Utilities.h \ - NSString+Utilities.h \ - NSNumber+Utilities.h \ NSNull+Utilities.h \ - NSDictionary+URL.h \ - NSCalendarDate+SOGo.h \ + NSNumber+Utilities.h \ + NSObject+DAV.h \ + NSObject+Utilities.h \ + NSString+DAV.h \ + NSString+Utilities.h \ + NSURL+DAV.h \ \ SOGoDAVAuthenticator.h \ SOGoWebAuthenticator.h \ + SOGoWebDAVAclManager.h \ + SOGoWebDAVValue.h \ SOGoMailer.h \ SOGoUser.h \ \ @@ -54,6 +59,9 @@ SOGo_HEADER_FILES = \ \ WORequest+SOGo.h +# SOGoCustomGroupFolder.m \ +# SOGoGroupsFolder.m \ +# SOGoGroupFolder.m SOGo_OBJC_FILES = \ SOGoCache.m \ SOGoObject.m \ @@ -62,28 +70,31 @@ SOGo_OBJC_FILES = \ SOGoGCSFolder.m \ SOGoParentFolder.m \ SOGoUserFolder.m \ - SOGoGroupsFolder.m \ - SOGoGroupFolder.m \ - SOGoCustomGroupFolder.m \ \ SOGoDateFormatter.m \ SOGoPermissions.m \ LDAPUserManager.m \ LDAPSource.m \ - SOGoDAVRendererTypes.m \ AgenorUserDefaults.m \ iCalEntityObject+Utilities.m \ + NSArray+DAV.m \ NSArray+Utilities.m \ + NSCalendarDate+SOGo.m \ + NSDictionary+DAV.m \ NSDictionary+URL.m \ NSDictionary+Utilities.m \ - NSObject+Utilities.m \ - NSString+Utilities.m \ - NSNumber+Utilities.m \ NSNull+Utilities.m \ - NSCalendarDate+SOGo.m \ + NSNumber+Utilities.m \ + NSObject+DAV.m \ + NSObject+Utilities.m \ + NSString+DAV.m \ + NSString+Utilities.m \ + NSURL+DAV.m \ \ SOGoDAVAuthenticator.m \ SOGoWebAuthenticator.m \ + SOGoWebDAVAclManager.m \ + SOGoWebDAVValue.m \ SOGoMailer.m \ SOGoUser.m \ \ diff --git a/SoObjects/SOGo/GNUmakefile.preamble b/SoObjects/SOGo/GNUmakefile.preamble index c2edd5290..97419b750 100644 --- a/SoObjects/SOGo/GNUmakefile.preamble +++ b/SoObjects/SOGo/GNUmakefile.preamble @@ -3,6 +3,8 @@ SOGo_INCLUDE_DIRS += -I.. -I../.. -DSOGO_MAJOR_VERSION="\"$(MAJOR_VERSION)\"" -DSOGO_MINOR_VERSION="\"$(MINOR_VERSION)\"" SOGo_LIBRARIES_DEPEND_UPON += \ + -L../../OGoContentStore/$(GNUSTEP_OBJ_DIR)/ \ + -L../../SOPE/NGCards/$(GNUSTEP_OBJ_DIR)/ \ -lOGoContentStore \ -lGDLAccess \ -lNGObjWeb \ diff --git a/SoObjects/common.make b/SoObjects/common.make index 12400eea7..89a625e95 100644 --- a/SoObjects/common.make +++ b/SoObjects/common.make @@ -18,7 +18,7 @@ ADDITIONAL_INCLUDE_DIRS += \ -I../../SOPE ADDITIONAL_LIB_DIRS += \ - -L../SOGo/$(GNUSTEP_OBJ_DIR)/ \ + -L../SOGo/SOGo.framework/ \ -L../../SOGo/$(GNUSTEP_OBJ_DIR)/ \ -L../../OGoContentStore/$(GNUSTEP_OBJ_DIR)/ \ -L../../SOPE/NGCards/$(GNUSTEP_OBJ_DIR)/ \ diff --git a/UI/Common/UIxAclEditor.m b/UI/Common/UIxAclEditor.m index 1d0a430e4..f5ae49976 100644 --- a/UI/Common/UIxAclEditor.m +++ b/UI/Common/UIxAclEditor.m @@ -193,7 +193,7 @@ mgr = [SoSecurityManager sharedSecurityManager]; - return (![mgr validatePermission: SOGoPerm_SaveAcls + return (![mgr validatePermission: SoPerm_ChangePermissions onObject: [self clientObject] inContext: context]); } diff --git a/UI/Common/product.plist b/UI/Common/product.plist index ba403b8d7..670291c02 100644 --- a/UI/Common/product.plist +++ b/UI/Common/product.plist @@ -31,12 +31,12 @@ SOGoObject = { methods = { addUserInAcls = { - protectedBy = "SaveAcls"; + protectedBy = "Change Permissions"; actionClass = "UIxObjectActions"; actionName = "addUserInAcls"; }; removeUserFromAcls = { - protectedBy = "SaveAcls"; + protectedBy = "Change Permissions"; actionClass = "UIxObjectActions"; actionName = "removeUserFromAcls"; }; @@ -45,7 +45,7 @@ pageName = "UIxAclEditor"; }; saveAcls = { - protectedBy = "SaveAcls"; + protectedBy = "Change Permissions"; pageName = "UIxAclEditor"; actionName = "saveAcls"; }; @@ -54,7 +54,7 @@ pageName = "UIxUserRightsEditor"; }; saveUserRights = { - protectedBy = "SaveAcls"; + protectedBy = "Change Permissions"; pageName = "UIxUserRightsEditor"; actionName = "saveUserRights"; }; @@ -63,7 +63,7 @@ SOGoParentFolder = { methods = { createFolder = { - protectedBy = "View"; + protectedBy = "SoPerm_AddFolders"; actionClass = "UIxParentFolderActions"; actionName = "createFolder"; }; @@ -97,12 +97,12 @@ actionName = "deactivateFolder"; }; deleteFolder = { - protectedBy = "SaveAcls"; /* a hack to force "owner" */ + protectedBy = "Delete Objects"; actionClass = "UIxFolderActions"; actionName = "deleteFolder"; }; renameFolder = { - protectedBy = "SaveAcls"; + protectedBy = "Change Permissions"; actionClass = "UIxFolderActions"; actionName = "renameFolder"; }; diff --git a/UI/Contacts/product.plist b/UI/Contacts/product.plist index 8c06e706e..1cebeb68d 100644 --- a/UI/Contacts/product.plist +++ b/UI/Contacts/product.plist @@ -37,7 +37,7 @@ pageName = "UIxAclEditor"; }; saveAcls = { - protectedBy = "SaveAcls"; + protectedBy = "Change Permissions"; pageName = "UIxAclEditor"; actionName = "saveAcls"; }; @@ -92,7 +92,7 @@ pageName = "UIxContactsUserRightsEditor"; }; saveUserRights = { - protectedBy = "SaveAcls"; + protectedBy = "Change Permissions"; pageName = "UIxContactsUserRightsEditor"; actionName = "saveUserRights"; }; diff --git a/UI/MailerUI/product.plist b/UI/MailerUI/product.plist index 733563beb..da02d0149 100644 --- a/UI/MailerUI/product.plist +++ b/UI/MailerUI/product.plist @@ -160,7 +160,7 @@ pageName = "UIxMailUserRightsEditor"; }; saveUserRights = { - protectedBy = "SaveAcls"; + protectedBy = "Change Permissions"; pageName = "UIxMailUserRightsEditor"; actionName = "saveUserRights"; }; diff --git a/UI/Scheduler/product.plist b/UI/Scheduler/product.plist index b18b596bd..0c48af666 100644 --- a/UI/Scheduler/product.plist +++ b/UI/Scheduler/product.plist @@ -1,4 +1,4 @@ -{ /* -*-javascript-*- */ +{ /* -*-java-*- */ requires = ( MAIN, MainUI, CommonUI, Appointments, Contacts, ContactsUI ); publicResources = ( @@ -99,7 +99,7 @@ pageName = "UIxCalUserRightsEditor"; }; saveUserRights = { - protectedBy = "SaveAcls"; + protectedBy = "Change Permissions"; pageName = "UIxCalUserRightsEditor"; actionName = "saveUserRights"; }; @@ -139,7 +139,7 @@ pageName = "UIxCalUserRightsEditor"; }; saveUserRights = { - protectedBy = "SaveAcls"; + protectedBy = "Change Permissions"; pageName = "UIxCalUserRightsEditor"; actionName = "saveUserRights"; }; diff --git a/UI/common.make b/UI/common.make index 847206198..21d53eed1 100644 --- a/UI/common.make +++ b/UI/common.make @@ -20,13 +20,13 @@ ifeq ($(GNUSTEP_BUILD_DIR),) ADDITIONAL_LIB_DIRS += \ -L../../SOPE/NGCards/$(GNUSTEP_OBJ_DIR) \ -L../SOGoUI/$(GNUSTEP_OBJ_DIR) \ - -L../../SoObjects/SOGo/$(GNUSTEP_OBJ_DIR) + -L../../SoObjects/SOGo/SOGo.framework/ else RELBUILD_DIR_libNGCards = \ $(GNUSTEP_BUILD_DIR)/../../SOPE/NGCards/$(GNUSTEP_OBJ_DIR_NAME) RELBUILD_DIR_libSOGo = \ - $(GNUSTEP_BUILD_DIR)/../../SoObjects/SOGo/$(GNUSTEP_OBJ_DIR_NAME) + $(GNUSTEP_BUILD_DIR)/../../SoObjects/SOGo/SOGo.framework/ RELBUILD_DIR_libSOGoUI = \ $(GNUSTEP_BUILD_DIR)/../SOGoUI/$(GNUSTEP_OBJ_DIR_NAME) RELBUILD_DIR_libOGoContentStore = \