From 76f03a16d6274e76774bbcf3d11d814e6309db03 Mon Sep 17 00:00:00 2001 From: Tatiana Lopaeva Date: Wed, 13 Mar 2024 10:58:50 +0300 Subject: [PATCH 1/2] PortalSettings: StorageManagement: Removed unnecessary requests for the free plan. --- .../client/src/store/StorageManagement.js | 32 ++++++++++++++----- packages/client/src/store/index.js | 2 ++ 2 files changed, 26 insertions(+), 8 deletions(-) diff --git a/packages/client/src/store/StorageManagement.js b/packages/client/src/store/StorageManagement.js index 7d0ea6603a..1dcf69c1f2 100644 --- a/packages/client/src/store/StorageManagement.js +++ b/packages/client/src/store/StorageManagement.js @@ -30,10 +30,18 @@ class StorageManagement { userFilterData = Filter.getDefault(); roomFilterData = RoomsFilter.getDefault(); - constructor(filesStore, peopleStore, authStore) { + constructor( + filesStore, + peopleStore, + authStore, + currentQuotaStore, + settingsStore, + ) { this.filesStore = filesStore; this.peopleStore = peopleStore; this.authStore = authStore; + this.currentQuotaStore = currentQuotaStore; + this.settingsStore = settingsStore; makeAutoObservable(this); } @@ -41,6 +49,8 @@ class StorageManagement { const { getFilesListItems } = this.filesStore; const { usersStore } = this.peopleStore; const { getPeopleListItem } = usersStore; + const { isFreeTariff } = this.currentQuotaStore; + const { standalone } = this.settingsStore; this.userFilterData.pageCount = FILTER_COUNT; this.userFilterData.sortBy = SortByFieldName.UsedSpace; @@ -51,8 +61,6 @@ class StorageManagement { this.roomFilterData.sortOrder = "descending"; const requests = [ - getUserList(this.userFilterData), - getRooms(this.roomFilterData), getPortal(), getPortalUsersCount(), getFilesUsedSpace(), @@ -61,20 +69,28 @@ class StorageManagement { isInit && requests.push(checkRecalculateQuota()); - let roomsList, accountsList; + if (!isFreeTariff || standalone) { + requests.push( + getUserList(this.userFilterData), + getRooms(this.roomFilterData), + ); + } + let roomsList, accountsList; [ - accountsList, - roomsList, this.portalInfo, this.activeUsersCount, this.filesUsedSpace, this.quotaSettings, this.needRecalculating, + accountsList, + roomsList, ] = await Promise.all(requests); - this.rooms = getFilesListItems(roomsList.folders); - this.accounts = accountsList.items.map((user) => getPeopleListItem(user)); + if (roomsList) this.rooms = getFilesListItems(roomsList?.folders); + + if (accountsList) + this.accounts = accountsList.items.map((user) => getPeopleListItem(user)); if (!this.quotaSettings.lastRecalculateDate && isInit) { await recalculateQuota(); diff --git a/packages/client/src/store/index.js b/packages/client/src/store/index.js index 60f0a1b4b2..639f8d8f2d 100644 --- a/packages/client/src/store/index.js +++ b/packages/client/src/store/index.js @@ -262,6 +262,8 @@ const storageManagement = new StorageManagement( filesStore, peopleStore, authStore, + currentQuotaStore, + settingsStore, ); const campaignsStore = new CampaignsStore(settingsStore, userStore); From ddb447dcd2192b6e3b44de5ae71984f84f1528ce Mon Sep 17 00:00:00 2001 From: Tatiana Lopaeva Date: Wed, 13 Mar 2024 13:29:16 +0300 Subject: [PATCH 2/2] PortalSettings: StorageManagement: Fixed destructuring from promise. --- .../client/src/store/StorageManagement.js | 48 +++++++++++-------- 1 file changed, 27 insertions(+), 21 deletions(-) diff --git a/packages/client/src/store/StorageManagement.js b/packages/client/src/store/StorageManagement.js index 1dcf69c1f2..61c68ea9f8 100644 --- a/packages/client/src/store/StorageManagement.js +++ b/packages/client/src/store/StorageManagement.js @@ -59,7 +59,6 @@ class StorageManagement { this.roomFilterData.pageCount = FILTER_COUNT; this.roomFilterData.sortBy = SortByFieldName.UsedSpace; this.roomFilterData.sortOrder = "descending"; - const requests = [ getPortal(), getPortalUsersCount(), @@ -67,7 +66,7 @@ class StorageManagement { getQuotaSettings(), ]; - isInit && requests.push(checkRecalculateQuota()); + if (!isFreeTariff || standalone) { requests.push( @@ -76,29 +75,36 @@ class StorageManagement { ); } - let roomsList, accountsList; - [ - this.portalInfo, - this.activeUsersCount, - this.filesUsedSpace, - this.quotaSettings, - this.needRecalculating, - accountsList, - roomsList, - ] = await Promise.all(requests); + try { + if (isInit) this.needRecalculating = await checkRecalculateQuota(); - if (roomsList) this.rooms = getFilesListItems(roomsList?.folders); + let roomsList, accountsList; + [ + this.portalInfo, + this.activeUsersCount, + this.filesUsedSpace, + this.quotaSettings, + accountsList, + roomsList, + ] = await Promise.all(requests); - if (accountsList) - this.accounts = accountsList.items.map((user) => getPeopleListItem(user)); + if (roomsList) this.rooms = getFilesListItems(roomsList?.folders); - if (!this.quotaSettings.lastRecalculateDate && isInit) { - await recalculateQuota(); - this.getIntervalCheckRecalculate(); - return; + if (accountsList) + this.accounts = accountsList.items.map((user) => + getPeopleListItem(user), + ); + + if (!this.quotaSettings.lastRecalculateDate && isInit) { + await recalculateQuota(); + this.getIntervalCheckRecalculate(); + return; + } + + if (this.needRecalculating) this.getIntervalCheckRecalculate(); + } catch (e) { + toastr.error(e); } - - if (this.needRecalculating) this.getIntervalCheckRecalculate(); }; init = async () => {