From 2fb042f575626cc6f938eec57c8e71e45ff6b1d5 Mon Sep 17 00:00:00 2001 From: usodhi <61431818+usodhi@users.noreply.github.com> Date: Wed, 29 Jul 2020 23:30:20 +0530 Subject: anyone can share without setting acls + fixed some inheriting stuff + deleting stuff + some cleanup --- src/client/util/SharingManager.scss | 2 +- src/client/util/SharingManager.tsx | 63 ++++++++++++++++++------------------- 2 files changed, 32 insertions(+), 33 deletions(-) (limited to 'src/client/util') diff --git a/src/client/util/SharingManager.scss b/src/client/util/SharingManager.scss index 2ce9f232c..8da80ef52 100644 --- a/src/client/util/SharingManager.scss +++ b/src/client/util/SharingManager.scss @@ -50,7 +50,7 @@ .share-button { height: 105%; margin-left: 2%; - background-color: #979797; + background-color: black; } } diff --git a/src/client/util/SharingManager.tsx b/src/client/util/SharingManager.tsx index ec04bdd81..83524f062 100644 --- a/src/client/util/SharingManager.tsx +++ b/src/client/util/SharingManager.tsx @@ -1,7 +1,7 @@ import { observable, runInAction, action } from "mobx"; import * as React from "react"; import MainViewModal from "../views/MainViewModal"; -import { Doc, Opt, DocListCastAsync } from "../../fields/Doc"; +import { Doc, Opt, DocListCastAsync, AclAdmin, DataSym } from "../../fields/Doc"; import { DocServer } from "../DocServer"; import { Cast, StrCast } from "../../fields/Types"; import * as RequestPromise from "request-promise"; @@ -82,6 +82,7 @@ export default class SharingManager extends React.Component<{}> { // } public open = (target: DocumentView) => { + runInAction(() => this.users = []); SelectionManager.DeselectAll(); this.populateUsers().then(action(() => { this.targetDocView = target; @@ -145,7 +146,7 @@ export default class SharingManager extends React.Component<{}> { const target = this.targetDoc!; const ACL = `ACL-${StrCast(group.groupName)}`; - distributeAcls(ACL, permission as SharingPermissions, target); + target.author === Doc.CurrentUserEmail && distributeAcls(ACL, permission as SharingPermissions, target); // if documents have been shared, add the target to that list if it doesn't already exist, otherwise create a new list with the target group.docsShared ? DocListCastAsync(group.docsShared).then(resolved => Doc.IndexOf(target, resolved!) === -1 && (group.docsShared as List).push(target)) : group.docsShared = new List([target]); @@ -220,7 +221,7 @@ export default class SharingManager extends React.Component<{}> { const key = user.email.replace('.', '_'); const ACL = `ACL-${key}`; - distributeAcls(ACL, permission as SharingPermissions, this.targetDoc!); + target.author === Doc.CurrentUserEmail && distributeAcls(ACL, permission as SharingPermissions, target); if (permission !== SharingPermissions.None) { DocListCastAsync(notificationDoc[storage]).then(resolved => { @@ -385,7 +386,7 @@ export default class SharingManager extends React.Component<{}> { const userKey = user.email.replace('.', '_'); const permissions = StrCast(this.targetDoc?.[`ACL-${userKey}`], SharingPermissions.None); - return permissions === SharingPermissions.None || user.email === this.targetDoc?.author ? null : ( + return user.email === this.targetDoc?.author ? null : (
{
- {this.targetDoc?.author !== Doc.CurrentUserEmail ? null - : -
-
- - {this.sharingOptions} - - -
-
- this.showUserOptions = !this.showUserOptions)} /> - this.showGroupOptions = !this.showGroupOptions)} /> -
+
+ this.showUserOptions = !this.showUserOptions)} /> + this.showGroupOptions = !this.showGroupOptions)} /> +
+
}
-- cgit v1.2.3-70-g09d2