aboutsummaryrefslogtreecommitdiff
path: root/src/client/views/DocComponent.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'src/client/views/DocComponent.tsx')
-rw-r--r--src/client/views/DocComponent.tsx30
1 files changed, 15 insertions, 15 deletions
diff --git a/src/client/views/DocComponent.tsx b/src/client/views/DocComponent.tsx
index f3aa8451a..1d0feec74 100644
--- a/src/client/views/DocComponent.tsx
+++ b/src/client/views/DocComponent.tsx
@@ -196,52 +196,52 @@ export function ViewBoxAnnotatableComponent<P extends ViewBoxAnnotatableProps>()
aclKeys.forEach(key =>
added.forEach(d => {
- if (key != 'acl-Me'){
- const permissionString = StrCast(Doc.GetProto(this.props.Document)[key])
- const permissionSymbol = ReverseHierarchyMap.get(permissionString)!.acl
- const permission = HierarchyMapping.get(permissionSymbol)!.name
- distributeAcls(key, permission, Doc.GetProto(d))
+ if (key != 'acl-Me') {
+ const permissionString = StrCast(Doc.GetProto(this.props.Document)[key]);
+ const permissionSymbol = ReverseHierarchyMap.get(permissionString)!.acl;
+ const permission = HierarchyMapping.get(permissionSymbol)!.name;
+ distributeAcls(key, permission, Doc.GetProto(d));
}
})
);
if (effectiveAcl === AclAugment) {
added.map(doc => {
- doc.embedContainer = this.props.Document;
+ Doc.SetContainer(doc, this.props.Document);
if (annotationKey ?? this._annotationKeySuffix()) Doc.GetProto(doc).annotationOn = this.props.Document;
Doc.AddDocToList(targetDataDoc, annotationKey ?? this.annotationKey, doc);
const parent = DocCast(doc.embedContainer);
doc.embedContainer && inheritParentAcls(parent, doc);
for (const key of Object.keys(parent)) {
- const symbol = ReverseHierarchyMap.get(StrCast(parent[key]))
- if (symbol && key.startsWith('acl')){
+ const symbol = ReverseHierarchyMap.get(StrCast(parent[key]));
+ if (symbol && key.startsWith('acl')) {
const sharePermission = HierarchyMapping.get(symbol.acl!)!.name;
const user = SharingManager.Instance?.users.filter(({ user: { email } }) => normalizeEmail(email) == key.slice(4))[0];
if (user && sharePermission !== SharingPermissions.None) return Doc.AddDocToList(user.sharingDoc, 'data', doc);
}
}
});
- } else {
- added
+ } else {
+ added
.filter(doc => [AclAdmin, AclEdit].includes(GetEffectiveAcl(doc)))
.map(doc => {
// only make a pushpin if we have acl's to edit the document
//DocUtils.LeavePushpin(doc);
doc._dragOnlyWithinContainer = undefined;
- doc.embedContainer = this.props.Document;
+ Doc.SetContainer(doc, this.props.Document);
if (annotationKey ?? this._annotationKeySuffix()) Doc.GetProto(doc).annotationOn = this.rootDoc;
const parent = DocCast(doc.embedContainer);
doc.embedContainer && inheritParentAcls(parent, doc);
for (const key of Object.keys(Doc.GetProto(parent))) {
- const symbol = ReverseHierarchyMap.get(StrCast(parent[key]))
- if (symbol && key.startsWith('acl')){
+ const symbol = ReverseHierarchyMap.get(StrCast(parent[key]));
+ if (symbol && key.startsWith('acl')) {
const sharePermission = HierarchyMapping.get(symbol.acl!)!.name;
const user = SharingManager.Instance?.users.filter(({ user: { email } }) => normalizeEmail(email) == key.slice(4))[0];
if (user && sharePermission !== SharingPermissions.None) return Doc.AddDocToList(user.sharingDoc, 'data', doc);
}
}
- });
-
+ });
+
const annoDocs = targetDataDoc[annotationKey ?? this.annotationKey] as List<Doc>;
if (annoDocs instanceof List) annoDocs.push(...added.filter(add => !annoDocs.includes(add)));
else targetDataDoc[annotationKey ?? this.annotationKey] = new List<Doc>(added);