aboutsummaryrefslogtreecommitdiff
path: root/src/fields/util.ts
diff options
context:
space:
mode:
authorsrichman333 <sarah_n_richman@brown.edu>2023-06-21 16:55:45 -0400
committersrichman333 <sarah_n_richman@brown.edu>2023-06-21 16:55:45 -0400
commit442c22e55bf4e53e57378980e7831cfea035d52a (patch)
treece079c2d9a61e1077a7bfe0912db06649d0f7fe6 /src/fields/util.ts
parent875196c24f3adc8cfff09a5351d933c35aba1305 (diff)
layout acls initially unset + bug fix with public acl when creating tabs and dashbaords
Diffstat (limited to 'src/fields/util.ts')
-rw-r--r--src/fields/util.ts17
1 files changed, 10 insertions, 7 deletions
diff --git a/src/fields/util.ts b/src/fields/util.ts
index 5bab701ff..9fb65c251 100644
--- a/src/fields/util.ts
+++ b/src/fields/util.ts
@@ -130,13 +130,16 @@ export function denormalizeEmail(email: string) {
* Copies parent's acl fields to the child
*/
export function inheritParentAcls(parent: Doc, child: Doc) {
- return;
- // const dataDoc = parent[DocData];
- // for (const key of Object.keys(dataDoc)) {
- // // if the default acl mode is private, then don't inherit the acl-Public permission, but set it to private.
- // const permission = key === 'acl-Public' && Doc.defaultAclPrivate ? AclPrivate : dataDoc[key];
- // key.startsWith('acl') && distributeAcls(key, permission, child);
- // }
+ const dataDoc = parent[DocData];
+ for (const key of Object.keys(dataDoc)) {
+ // if the default acl mode is private, then don't inherit the acl-Public permission, but set it to private.
+ // const permission: string = key === 'acl-Public' && Doc.defaultAclPrivate ? AclPrivate : dataDoc[key];
+ const symbol = ReverseHierarchyMap.get(StrCast(dataDoc[key]))
+ if (symbol){
+ const sharePermission = HierarchyMapping.get(symbol.acl!)!.name;
+ key.startsWith('acl') && distributeAcls(key, sharePermission, child)
+ }
+ }
}
/**