From 82fec34f7419e5f3b7645f38e66ac2a421c7e177 Mon Sep 17 00:00:00 2001 From: Julia Radzhabova Date: Wed, 9 Feb 2022 17:48:26 +0300 Subject: [PATCH 1/2] Add userInfo permissions: hide users not in permissions.userInfo groups --- apps/api/documents/api.js | 1 + apps/documenteditor/main/app/controller/Main.js | 2 ++ apps/documenteditor/mobile/src/store/appOptions.js | 2 ++ apps/presentationeditor/main/app/controller/Main.js | 2 ++ apps/presentationeditor/mobile/src/store/appOptions.js | 2 ++ apps/spreadsheeteditor/main/app/controller/Main.js | 2 ++ apps/spreadsheeteditor/mobile/src/store/appOptions.js | 2 ++ 7 files changed, 13 insertions(+) diff --git a/apps/api/documents/api.js b/apps/api/documents/api.js index 4eaf9b218..d73ae8214 100644 --- a/apps/api/documents/api.js +++ b/apps/api/documents/api.js @@ -56,6 +56,7 @@ edit: ["Group1", ""] // current user can edit comments made by users from Group1 and users without a group. remove: ["Group1", ""] // current user can remove comments made by users from Group1 and users without a group. }, + userInfo: ["Group1", ""], // show tooltips/cursors/info in header only for users in userInfo groups. [""] - means users without group, [] - don't show any users, null/undefined/"" - show all users protect: // default = true. show/hide protect tab or protect buttons } }, diff --git a/apps/documenteditor/main/app/controller/Main.js b/apps/documenteditor/main/app/controller/Main.js index 483c8f70b..3d7a7ff79 100644 --- a/apps/documenteditor/main/app/controller/Main.js +++ b/apps/documenteditor/main/app/controller/Main.js @@ -1481,10 +1481,12 @@ define([ this.appOptions.canUseReviewPermissions = this.appOptions.canLicense && (!!this.permissions.reviewGroups || this.editorConfig.customization && this.editorConfig.customization.reviewPermissions && (typeof (this.editorConfig.customization.reviewPermissions) == 'object')); this.appOptions.canUseCommentPermissions = this.appOptions.canLicense && !!this.permissions.commentGroups; + this.appOptions.canUseUserInfoPermissions = this.appOptions.canLicense && !!this.permissions.userInfo; AscCommon.UserInfoParser.setParser(true); AscCommon.UserInfoParser.setCurrentName(this.appOptions.user.fullname); this.appOptions.canUseReviewPermissions && AscCommon.UserInfoParser.setReviewPermissions(this.permissions.reviewGroups, this.editorConfig.customization.reviewPermissions); this.appOptions.canUseCommentPermissions && AscCommon.UserInfoParser.setCommentPermissions(this.permissions.commentGroups); + this.appOptions.canUseUserInfoPermissions && AscCommon.UserInfoParser.setUserInfoPermissions(this.permissions.userInfo); appHeader.setUserName(AscCommon.UserInfoParser.getParsedName(AscCommon.UserInfoParser.getCurrentName())); this.appOptions.canRename && appHeader.setCanRename(true); diff --git a/apps/documenteditor/mobile/src/store/appOptions.js b/apps/documenteditor/mobile/src/store/appOptions.js index d4c8a86f2..515e7b115 100644 --- a/apps/documenteditor/mobile/src/store/appOptions.js +++ b/apps/documenteditor/mobile/src/store/appOptions.js @@ -141,8 +141,10 @@ export class storeAppOptions { this.canUseReviewPermissions = this.canLicense && (!!permissions.reviewGroups || this.customization && this.customization.reviewPermissions && (typeof (this.customization.reviewPermissions) == 'object')); this.canUseCommentPermissions = this.canLicense && !!permissions.commentGroups; + this.canUseUserInfoPermissions = this.canLicense && !!permissions.userInfo; this.canUseReviewPermissions && AscCommon.UserInfoParser.setReviewPermissions(permissions.reviewGroups, this.customization.reviewPermissions); this.canUseCommentPermissions && AscCommon.UserInfoParser.setCommentPermissions(permissions.commentGroups); + this.canUseUserInfoPermissions && AscCommon.UserInfoParser.setUserInfoPermissions(permissions.userInfo); } setCanViewReview (value) { this.canViewReview = value; diff --git a/apps/presentationeditor/main/app/controller/Main.js b/apps/presentationeditor/main/app/controller/Main.js index 5df6928e3..20473487f 100644 --- a/apps/presentationeditor/main/app/controller/Main.js +++ b/apps/presentationeditor/main/app/controller/Main.js @@ -1153,10 +1153,12 @@ define([ this.appOptions.canUseReviewPermissions = this.appOptions.canLicense && (!!this.permissions.reviewGroups || this.appOptions.canLicense && this.editorConfig.customization && this.editorConfig.customization.reviewPermissions && (typeof (this.editorConfig.customization.reviewPermissions) == 'object')); this.appOptions.canUseCommentPermissions = this.appOptions.canLicense && !!this.permissions.commentGroups; + this.appOptions.canUseUserInfoPermissions = this.appOptions.canLicense && !!this.permissions.userInfo; AscCommon.UserInfoParser.setParser(true); AscCommon.UserInfoParser.setCurrentName(this.appOptions.user.fullname); this.appOptions.canUseReviewPermissions && AscCommon.UserInfoParser.setReviewPermissions(this.permissions.reviewGroups, this.editorConfig.customization.reviewPermissions); this.appOptions.canUseCommentPermissions && AscCommon.UserInfoParser.setCommentPermissions(this.permissions.commentGroups); + this.appOptions.canUseUserInfoPermissions && AscCommon.UserInfoParser.setUserInfoPermissions(this.permissions.userInfo); appHeader.setUserName(AscCommon.UserInfoParser.getParsedName(AscCommon.UserInfoParser.getCurrentName())); this.appOptions.canRename && appHeader.setCanRename(true); diff --git a/apps/presentationeditor/mobile/src/store/appOptions.js b/apps/presentationeditor/mobile/src/store/appOptions.js index a84de7373..4c50cd25f 100644 --- a/apps/presentationeditor/mobile/src/store/appOptions.js +++ b/apps/presentationeditor/mobile/src/store/appOptions.js @@ -112,7 +112,9 @@ export class storeAppOptions { this.canUseReviewPermissions = this.canLicense && (!!permissions.reviewGroups || this.customization && this.customization.reviewPermissions && (typeof (this.customization.reviewPermissions) == 'object')); this.canUseCommentPermissions = this.canLicense && !!permissions.commentGroups; + this.canUseUserInfoPermissions = this.canLicense && !!permissions.userInfo; this.canUseReviewPermissions && AscCommon.UserInfoParser.setReviewPermissions(permissions.reviewGroups, this.customization.reviewPermissions); this.canUseCommentPermissions && AscCommon.UserInfoParser.setCommentPermissions(permissions.commentGroups); + this.canUseUserInfoPermissions && AscCommon.UserInfoParser.setUserInfoPermissions(permissions.userInfo); } } \ No newline at end of file diff --git a/apps/spreadsheeteditor/main/app/controller/Main.js b/apps/spreadsheeteditor/main/app/controller/Main.js index 1a13e7f58..320db5d73 100644 --- a/apps/spreadsheeteditor/main/app/controller/Main.js +++ b/apps/spreadsheeteditor/main/app/controller/Main.js @@ -1230,10 +1230,12 @@ define([ this.appOptions.canUseReviewPermissions = this.appOptions.canLicense && (!!this.permissions.reviewGroups || this.appOptions.canLicense && this.editorConfig.customization && this.editorConfig.customization.reviewPermissions && (typeof (this.editorConfig.customization.reviewPermissions) == 'object')); this.appOptions.canUseCommentPermissions = this.appOptions.canLicense && !!this.permissions.commentGroups; + this.appOptions.canUseUserInfoPermissions = this.appOptions.canLicense && !!this.permissions.userInfo; AscCommon.UserInfoParser.setParser(true); AscCommon.UserInfoParser.setCurrentName(this.appOptions.user.fullname); this.appOptions.canUseReviewPermissions && AscCommon.UserInfoParser.setReviewPermissions(this.permissions.reviewGroups, this.editorConfig.customization.reviewPermissions); this.appOptions.canUseCommentPermissions && AscCommon.UserInfoParser.setCommentPermissions(this.permissions.commentGroups); + this.appOptions.canUseUserInfoPermissions && AscCommon.UserInfoParser.setUserInfoPermissions(this.permissions.userInfo); this.headerView.setUserName(AscCommon.UserInfoParser.getParsedName(AscCommon.UserInfoParser.getCurrentName())); } else this.appOptions.canModifyFilter = true; diff --git a/apps/spreadsheeteditor/mobile/src/store/appOptions.js b/apps/spreadsheeteditor/mobile/src/store/appOptions.js index 106748fb8..9e5ac9964 100644 --- a/apps/spreadsheeteditor/mobile/src/store/appOptions.js +++ b/apps/spreadsheeteditor/mobile/src/store/appOptions.js @@ -107,7 +107,9 @@ export class storeAppOptions { this.canUseReviewPermissions = this.canLicense && (!!permissions.reviewGroups || this.customization && this.customization.reviewPermissions && (typeof (this.customization.reviewPermissions) == 'object')); this.canUseCommentPermissions = this.canLicense && !!permissions.commentGroups; + this.canUseUserInfoPermissions = this.canLicense && !!permissions.userInfo; this.canUseReviewPermissions && AscCommon.UserInfoParser.setReviewPermissions(permissions.reviewGroups, this.customization.reviewPermissions); this.canUseCommentPermissions && AscCommon.UserInfoParser.setCommentPermissions(permissions.commentGroups); + this.canUseUserInfoPermissions && AscCommon.UserInfoParser.setUserInfoPermissions(permissions.userInfo); } } \ No newline at end of file From ac1dcce854a68a769386c8f1965154f14e9d7055 Mon Sep 17 00:00:00 2001 From: Julia Radzhabova Date: Wed, 9 Feb 2022 18:14:19 +0300 Subject: [PATCH 2/2] permissions.userInfo->permissions.userInfoGroups --- apps/api/documents/api.js | 2 +- apps/documenteditor/main/app/controller/Main.js | 4 ++-- apps/documenteditor/mobile/src/store/appOptions.js | 4 ++-- apps/presentationeditor/main/app/controller/Main.js | 4 ++-- apps/presentationeditor/mobile/src/store/appOptions.js | 4 ++-- apps/spreadsheeteditor/main/app/controller/Main.js | 4 ++-- apps/spreadsheeteditor/mobile/src/store/appOptions.js | 4 ++-- 7 files changed, 13 insertions(+), 13 deletions(-) diff --git a/apps/api/documents/api.js b/apps/api/documents/api.js index d73ae8214..f7b3f9f71 100644 --- a/apps/api/documents/api.js +++ b/apps/api/documents/api.js @@ -56,7 +56,7 @@ edit: ["Group1", ""] // current user can edit comments made by users from Group1 and users without a group. remove: ["Group1", ""] // current user can remove comments made by users from Group1 and users without a group. }, - userInfo: ["Group1", ""], // show tooltips/cursors/info in header only for users in userInfo groups. [""] - means users without group, [] - don't show any users, null/undefined/"" - show all users + userInfoGroups: ["Group1", ""], // show tooltips/cursors/info in header only for users in userInfoGroups groups. [""] - means users without group, [] - don't show any users, null/undefined/"" - show all users protect: // default = true. show/hide protect tab or protect buttons } }, diff --git a/apps/documenteditor/main/app/controller/Main.js b/apps/documenteditor/main/app/controller/Main.js index 3d7a7ff79..bb1c6d83f 100644 --- a/apps/documenteditor/main/app/controller/Main.js +++ b/apps/documenteditor/main/app/controller/Main.js @@ -1481,12 +1481,12 @@ define([ this.appOptions.canUseReviewPermissions = this.appOptions.canLicense && (!!this.permissions.reviewGroups || this.editorConfig.customization && this.editorConfig.customization.reviewPermissions && (typeof (this.editorConfig.customization.reviewPermissions) == 'object')); this.appOptions.canUseCommentPermissions = this.appOptions.canLicense && !!this.permissions.commentGroups; - this.appOptions.canUseUserInfoPermissions = this.appOptions.canLicense && !!this.permissions.userInfo; + this.appOptions.canUseUserInfoPermissions = this.appOptions.canLicense && !!this.permissions.userInfoGroups; AscCommon.UserInfoParser.setParser(true); AscCommon.UserInfoParser.setCurrentName(this.appOptions.user.fullname); this.appOptions.canUseReviewPermissions && AscCommon.UserInfoParser.setReviewPermissions(this.permissions.reviewGroups, this.editorConfig.customization.reviewPermissions); this.appOptions.canUseCommentPermissions && AscCommon.UserInfoParser.setCommentPermissions(this.permissions.commentGroups); - this.appOptions.canUseUserInfoPermissions && AscCommon.UserInfoParser.setUserInfoPermissions(this.permissions.userInfo); + this.appOptions.canUseUserInfoPermissions && AscCommon.UserInfoParser.setUserInfoPermissions(this.permissions.userInfoGroups); appHeader.setUserName(AscCommon.UserInfoParser.getParsedName(AscCommon.UserInfoParser.getCurrentName())); this.appOptions.canRename && appHeader.setCanRename(true); diff --git a/apps/documenteditor/mobile/src/store/appOptions.js b/apps/documenteditor/mobile/src/store/appOptions.js index 515e7b115..83a839d05 100644 --- a/apps/documenteditor/mobile/src/store/appOptions.js +++ b/apps/documenteditor/mobile/src/store/appOptions.js @@ -141,10 +141,10 @@ export class storeAppOptions { this.canUseReviewPermissions = this.canLicense && (!!permissions.reviewGroups || this.customization && this.customization.reviewPermissions && (typeof (this.customization.reviewPermissions) == 'object')); this.canUseCommentPermissions = this.canLicense && !!permissions.commentGroups; - this.canUseUserInfoPermissions = this.canLicense && !!permissions.userInfo; + this.canUseUserInfoPermissions = this.canLicense && !!permissions.userInfoGroups; this.canUseReviewPermissions && AscCommon.UserInfoParser.setReviewPermissions(permissions.reviewGroups, this.customization.reviewPermissions); this.canUseCommentPermissions && AscCommon.UserInfoParser.setCommentPermissions(permissions.commentGroups); - this.canUseUserInfoPermissions && AscCommon.UserInfoParser.setUserInfoPermissions(permissions.userInfo); + this.canUseUserInfoPermissions && AscCommon.UserInfoParser.setUserInfoPermissions(permissions.userInfoGroups); } setCanViewReview (value) { this.canViewReview = value; diff --git a/apps/presentationeditor/main/app/controller/Main.js b/apps/presentationeditor/main/app/controller/Main.js index 20473487f..317aa99f1 100644 --- a/apps/presentationeditor/main/app/controller/Main.js +++ b/apps/presentationeditor/main/app/controller/Main.js @@ -1153,12 +1153,12 @@ define([ this.appOptions.canUseReviewPermissions = this.appOptions.canLicense && (!!this.permissions.reviewGroups || this.appOptions.canLicense && this.editorConfig.customization && this.editorConfig.customization.reviewPermissions && (typeof (this.editorConfig.customization.reviewPermissions) == 'object')); this.appOptions.canUseCommentPermissions = this.appOptions.canLicense && !!this.permissions.commentGroups; - this.appOptions.canUseUserInfoPermissions = this.appOptions.canLicense && !!this.permissions.userInfo; + this.appOptions.canUseUserInfoPermissions = this.appOptions.canLicense && !!this.permissions.userInfoGroups; AscCommon.UserInfoParser.setParser(true); AscCommon.UserInfoParser.setCurrentName(this.appOptions.user.fullname); this.appOptions.canUseReviewPermissions && AscCommon.UserInfoParser.setReviewPermissions(this.permissions.reviewGroups, this.editorConfig.customization.reviewPermissions); this.appOptions.canUseCommentPermissions && AscCommon.UserInfoParser.setCommentPermissions(this.permissions.commentGroups); - this.appOptions.canUseUserInfoPermissions && AscCommon.UserInfoParser.setUserInfoPermissions(this.permissions.userInfo); + this.appOptions.canUseUserInfoPermissions && AscCommon.UserInfoParser.setUserInfoPermissions(this.permissions.userInfoGroups); appHeader.setUserName(AscCommon.UserInfoParser.getParsedName(AscCommon.UserInfoParser.getCurrentName())); this.appOptions.canRename && appHeader.setCanRename(true); diff --git a/apps/presentationeditor/mobile/src/store/appOptions.js b/apps/presentationeditor/mobile/src/store/appOptions.js index 4c50cd25f..97b83a381 100644 --- a/apps/presentationeditor/mobile/src/store/appOptions.js +++ b/apps/presentationeditor/mobile/src/store/appOptions.js @@ -112,9 +112,9 @@ export class storeAppOptions { this.canUseReviewPermissions = this.canLicense && (!!permissions.reviewGroups || this.customization && this.customization.reviewPermissions && (typeof (this.customization.reviewPermissions) == 'object')); this.canUseCommentPermissions = this.canLicense && !!permissions.commentGroups; - this.canUseUserInfoPermissions = this.canLicense && !!permissions.userInfo; + this.canUseUserInfoPermissions = this.canLicense && !!permissions.userInfoGroups; this.canUseReviewPermissions && AscCommon.UserInfoParser.setReviewPermissions(permissions.reviewGroups, this.customization.reviewPermissions); this.canUseCommentPermissions && AscCommon.UserInfoParser.setCommentPermissions(permissions.commentGroups); - this.canUseUserInfoPermissions && AscCommon.UserInfoParser.setUserInfoPermissions(permissions.userInfo); + this.canUseUserInfoPermissions && AscCommon.UserInfoParser.setUserInfoPermissions(permissions.userInfoGroups); } } \ No newline at end of file diff --git a/apps/spreadsheeteditor/main/app/controller/Main.js b/apps/spreadsheeteditor/main/app/controller/Main.js index 320db5d73..dd5e3385c 100644 --- a/apps/spreadsheeteditor/main/app/controller/Main.js +++ b/apps/spreadsheeteditor/main/app/controller/Main.js @@ -1230,12 +1230,12 @@ define([ this.appOptions.canUseReviewPermissions = this.appOptions.canLicense && (!!this.permissions.reviewGroups || this.appOptions.canLicense && this.editorConfig.customization && this.editorConfig.customization.reviewPermissions && (typeof (this.editorConfig.customization.reviewPermissions) == 'object')); this.appOptions.canUseCommentPermissions = this.appOptions.canLicense && !!this.permissions.commentGroups; - this.appOptions.canUseUserInfoPermissions = this.appOptions.canLicense && !!this.permissions.userInfo; + this.appOptions.canUseUserInfoPermissions = this.appOptions.canLicense && !!this.permissions.userInfoGroups; AscCommon.UserInfoParser.setParser(true); AscCommon.UserInfoParser.setCurrentName(this.appOptions.user.fullname); this.appOptions.canUseReviewPermissions && AscCommon.UserInfoParser.setReviewPermissions(this.permissions.reviewGroups, this.editorConfig.customization.reviewPermissions); this.appOptions.canUseCommentPermissions && AscCommon.UserInfoParser.setCommentPermissions(this.permissions.commentGroups); - this.appOptions.canUseUserInfoPermissions && AscCommon.UserInfoParser.setUserInfoPermissions(this.permissions.userInfo); + this.appOptions.canUseUserInfoPermissions && AscCommon.UserInfoParser.setUserInfoPermissions(this.permissions.userInfoGroups); this.headerView.setUserName(AscCommon.UserInfoParser.getParsedName(AscCommon.UserInfoParser.getCurrentName())); } else this.appOptions.canModifyFilter = true; diff --git a/apps/spreadsheeteditor/mobile/src/store/appOptions.js b/apps/spreadsheeteditor/mobile/src/store/appOptions.js index 9e5ac9964..cdecf77b8 100644 --- a/apps/spreadsheeteditor/mobile/src/store/appOptions.js +++ b/apps/spreadsheeteditor/mobile/src/store/appOptions.js @@ -107,9 +107,9 @@ export class storeAppOptions { this.canUseReviewPermissions = this.canLicense && (!!permissions.reviewGroups || this.customization && this.customization.reviewPermissions && (typeof (this.customization.reviewPermissions) == 'object')); this.canUseCommentPermissions = this.canLicense && !!permissions.commentGroups; - this.canUseUserInfoPermissions = this.canLicense && !!permissions.userInfo; + this.canUseUserInfoPermissions = this.canLicense && !!permissions.userInfoGroups; this.canUseReviewPermissions && AscCommon.UserInfoParser.setReviewPermissions(permissions.reviewGroups, this.customization.reviewPermissions); this.canUseCommentPermissions && AscCommon.UserInfoParser.setCommentPermissions(permissions.commentGroups); - this.canUseUserInfoPermissions && AscCommon.UserInfoParser.setUserInfoPermissions(permissions.userInfo); + this.canUseUserInfoPermissions && AscCommon.UserInfoParser.setUserInfoPermissions(permissions.userInfoGroups); } } \ No newline at end of file