From fe2015735a03a0439aac9a66aa833886be94bb08 Mon Sep 17 00:00:00 2001 From: Martin Filser Date: Sat, 4 Feb 2023 00:25:46 +0100 Subject: [PATCH] Move every Team.findOne() to the ReactiveCache --- client/components/settings/peopleBody.js | 10 +++++----- client/components/sidebar/sidebar.js | 2 +- client/components/users/userAvatar.js | 6 +++--- imports/reactiveCache.js | 23 +++++++++++++++++++++++ 4 files changed, 32 insertions(+), 9 deletions(-) diff --git a/client/components/settings/peopleBody.js b/client/components/settings/peopleBody.js index 1d6d6efdd..df3aebb15 100644 --- a/client/components/settings/peopleBody.js +++ b/client/components/settings/peopleBody.js @@ -198,7 +198,7 @@ Template.orgRow.helpers({ Template.teamRow.helpers({ teamData() { - return Team.findOne(this.teamId); + return ReactiveCache.getTeam(this.teamId); }, }); @@ -238,7 +238,7 @@ Template.editOrgPopup.helpers({ Template.editTeamPopup.helpers({ team() { - return Team.findOne(this.teamId); + return ReactiveCache.getTeam(this.teamId); }, errorMessage() { return Template.instance().errorMessage.get(); @@ -311,7 +311,7 @@ Template.newOrgPopup.helpers({ Template.newTeamPopup.helpers({ team() { - return Team.findOne(this.teamId); + return ReactiveCache.getTeam(this.teamId); }, errorMessage() { return Template.instance().errorMessage.get(); @@ -369,7 +369,7 @@ BlazeComponent.extendComponent({ BlazeComponent.extendComponent({ onCreated() {}, team() { - return Team.findOne(this.teamId); + return ReactiveCache.getTeam(this.teamId); }, events() { return [ @@ -605,7 +605,7 @@ Template.editOrgPopup.events({ Template.editTeamPopup.events({ submit(event, templateInstance) { event.preventDefault(); - const team = Team.findOne(this.teamId); + const team = ReactiveCache.getTeam(this.teamId); const teamDisplayName = templateInstance .find('.js-teamDisplayName') diff --git a/client/components/sidebar/sidebar.js b/client/components/sidebar/sidebar.js index cfa9bd7ae..aba891dbb 100644 --- a/client/components/sidebar/sidebar.js +++ b/client/components/sidebar/sidebar.js @@ -1845,7 +1845,7 @@ BlazeComponent.extendComponent({ Template.removeBoardTeamPopup.helpers({ team() { - return Team.findOne(this.teamId); + return ReactiveCache.getTeam(this.teamId); }, }); diff --git a/client/components/users/userAvatar.js b/client/components/users/userAvatar.js index e7df86468..aa3dd3407 100644 --- a/client/components/users/userAvatar.js +++ b/client/components/users/userAvatar.js @@ -148,18 +148,18 @@ BlazeComponent.extendComponent({ Template.boardTeamRow.helpers({ teamData() { - return Team.findOne(this.teamId); + return ReactiveCache.getTeam(this.teamId); }, }); Template.boardTeamName.helpers({ teamName() { - const team = Team.findOne(this.teamId); + const team = ReactiveCache.getTeam(this.teamId); return team && team.teamDisplayName; }, teamViewPortWidth() { - const team = Team.findOne(this.teamId); + const team = ReactiveCache.getTeam(this.teamId); return ((team && team.teamDisplayName.length) || 1) * 12; }, }); diff --git a/imports/reactiveCache.js b/imports/reactiveCache.js index 4ad08988a..135c445ff 100644 --- a/imports/reactiveCache.js +++ b/imports/reactiveCache.js @@ -47,6 +47,10 @@ ReactiveCacheServer = { const ret = Org.findOne(id); return ret; }, + getTeam(id) { + const ret = Team.findOne(id); + return ret; + }, getActivity(id) { const ret = Activities.findOne(id); return ret; @@ -175,6 +179,16 @@ ReactiveCacheClient = { const ret = this.__org.get(id); return ret; }, + getTeam(id) { + if (!this.__team) { + this.__team = new DataCache(_id => { + const _ret = Team.findOne(_id); + return _ret; + }); + } + const ret = this.__team.get(id); + return ret; + }, getActivity(id) { if (!this.__activity) { this.__activity = new DataCache(_id => { @@ -313,6 +327,15 @@ ReactiveCache = { } return ret; }, + getTeam(id) { + let ret; + if (Meteor.isServer) { + ret = ReactiveCacheServer.getTeam(id); + } else { + ret = ReactiveCacheClient.getTeam(id); + } + return ret; + }, getActivity(id) { let ret; if (Meteor.isServer) {