diff --git a/server/publications/boards.js b/server/publications/boards.js index 0b8ccf2df..d0c8a9404 100644 --- a/server/publications/boards.js +++ b/server/publications/boards.js @@ -32,7 +32,7 @@ Meteor.publishRelations('boards', function() { // if(teamIdsUserBelongs && teamIdsUserBelongs != ''){ // teamsIds = teamIdsUserBelongs.split(','); // } - this.cursor(Boards.find( + this.cursor(ReactiveCache.getBoards( { archived: false, _id: { $in: Boards.userBoardIds(userId, false) }, @@ -49,6 +49,7 @@ Meteor.publishRelations('boards', function() { { sort: { sort: 1 /* boards default sorting */ }, }, + true, ), function(boardId, board) { this.cursor( @@ -87,7 +88,7 @@ Meteor.publish('boardsReport', function() { // array to tell the client to remove the previously published docs. if (!Match.test(userId, String) || !userId) return []; - const boards = Boards.find( + const boards = ReactiveCache.getBoards( { _id: { $in: Boards.userBoardIds(userId, null) }, }, @@ -110,6 +111,7 @@ Meteor.publish('boardsReport', function() { }, sort: { sort: 1 /* boards default sorting */ }, }, + true, ); const userIds = []; @@ -146,7 +148,7 @@ Meteor.publish('archivedBoards', function() { const userId = this.userId; if (!Match.test(userId, String)) return []; - const ret = Boards.find( + const ret = ReactiveCache.getBoards( { _id: { $in: Boards.userBoardIds(userId, true)}, archived: true, @@ -169,6 +171,7 @@ Meteor.publish('archivedBoards', function() { }, sort: { archivedAt: -1, modifiedAt: -1 }, }, + true, ); return ret; }); @@ -200,7 +203,7 @@ Meteor.publishRelations('board', function(boardId, isArchived) { } this.cursor( - Boards.find( + ReactiveCache.getBoards( { _id: boardId, archived: false, @@ -210,6 +213,7 @@ Meteor.publishRelations('board', function(boardId, isArchived) { // Sort required to ensure oplog usage }, { limit: 1, sort: { sort: 1 /* boards default sorting */ } }, + true, ), function(boardId, board) { this.cursor(Lists.find({ boardId, archived: isArchived })); diff --git a/server/publications/cards.js b/server/publications/cards.js index 43ef7565b..52843b9a0 100644 --- a/server/publications/cards.js +++ b/server/publications/cards.js @@ -68,7 +68,7 @@ Meteor.publishRelations('popupCardData', function(cardId) { this.cursor( Cards.find({_id: cardId}), function(cardId, card) { - this.cursor(Boards.find({_id: card.boardId})); + this.cursor(ReactiveCache.getBoards({_id: card.boardId}, {}, true)); this.cursor(Lists.find({boardId: card.boardId})); }, ); @@ -770,9 +770,10 @@ function findCards(sessionId, query) { return [ cards, - Boards.find( + ReactiveCache.getBoards( { _id: { $in: boards } }, { fields: { ...fields, labels: 1, color: 1 } }, + true, ), Swimlanes.find( { _id: { $in: swimlanes } }, diff --git a/server/publications/rules.js b/server/publications/rules.js index 5529229b2..4337855a7 100644 --- a/server/publications/rules.js +++ b/server/publications/rules.js @@ -42,7 +42,7 @@ Meteor.publish('rulesReport', () => { rules, Actions.find({ _id: { $in: actionIds } }), Triggers.find({ _id: { $in: triggerIds } }), - Boards.find({ _id: { $in: boardIds } }, { fields: { title: 1 } }), + ReactiveCache.getBoards({ _id: { $in: boardIds } }, { fields: { title: 1 } }, true), ]; return ret; });