diff --git a/security/browser.py b/security/browser.py index 8d1caaf..1ef9e7b 100644 --- a/security/browser.py +++ b/security/browser.py @@ -216,6 +216,10 @@ class ManageWorkspaceView(PermissionView): setPrincipalRole(wsiRM, roleName, gid, roleWSI and Allow or None) self.context.workspaceGroupNames = gn + setter = ISecuritySetter(adapted(self.parent)) + setter.propagateSecurity() + #setter = ISecuritySetter(adapted(self.context)) + #setter.propagateSecurity() @Lazy def permission_macros(self): diff --git a/security/setter.py b/security/setter.py index 5fb9cbc..8dbee95 100644 --- a/security/setter.py +++ b/security/setter.py @@ -152,6 +152,9 @@ class ConceptSecuritySetter(LoopsObjectSecuritySetter): setter.setDefaultRolePermissions() setter.acquireRolePermissions() setter.copyPrincipalRoles(self, revert) + wi = baseObject(self.context).workspaceInformation + if wi: + setter.copyPrincipalRoles(ISecuritySetter(wi), revert) setter.propagateSecurity(revert, updated) def propagateSecurity(self, revert=False, updated=None):