diff --git a/client/components/activities/activities.js b/client/components/activities/activities.js index 176d151df..1609dabf3 100644 --- a/client/components/activities/activities.js +++ b/client/components/activities/activities.js @@ -13,39 +13,41 @@ BlazeComponent.extendComponent({ const sidebar = Sidebar; sidebar && sidebar.callFirstWith(null, 'resetNextPeak'); this.autorun(() => { - let mode = this.data().mode; - const capitalizedMode = Utils.capitalize(mode); - let searchId; - if (mode === 'linkedcard' || mode === 'linkedboard') { - searchId = Utils.getCurrentCard().linkedId; - mode = mode.replace('linked', ''); - } else if (mode === 'card') { - searchId = Utils.getCurrentCardId(); - } else { - searchId = Session.get(`current${capitalizedMode}`); - } - const limit = this.page.get() * activitiesPerPage; - const user = ReactiveCache.getCurrentUser(); - const hideSystem = user ? user.hasHiddenSystemMessages() : false; - if (searchId === null) return; - - this.subscribe('activities', mode, searchId, limit, hideSystem, () => { - this.loadNextPageLocked = false; - - // TODO the guard can be removed as soon as the TODO above is resolved - if (!sidebar) return; - // If the sibear peak hasn't increased, that mean that there are no more - // activities, and we can stop calling new subscriptions. - // XXX This is hacky! We need to know excatly and reactively how many - // activities there are, we probably want to denormalize this number - // dirrectly into card and board documents. - const nextPeakBefore = sidebar.callFirstWith(null, 'getNextPeak'); - sidebar.calculateNextPeak(); - const nextPeakAfter = sidebar.callFirstWith(null, 'getNextPeak'); - if (nextPeakBefore === nextPeakAfter) { - sidebar.callFirstWith(null, 'resetNextPeak'); + let mode = this.data()?.mode; + if (mode) { + const capitalizedMode = Utils.capitalize(mode); + let searchId; + if (mode === 'linkedcard' || mode === 'linkedboard') { + searchId = Utils.getCurrentCard().linkedId; + mode = mode.replace('linked', ''); + } else if (mode === 'card') { + searchId = Utils.getCurrentCardId(); + } else { + searchId = Session.get(`current${capitalizedMode}`); } - }); + const limit = this.page.get() * activitiesPerPage; + const user = ReactiveCache.getCurrentUser(); + const hideSystem = user ? user.hasHiddenSystemMessages() : false; + if (searchId === null) return; + + this.subscribe('activities', mode, searchId, limit, hideSystem, () => { + this.loadNextPageLocked = false; + + // TODO the guard can be removed as soon as the TODO above is resolved + if (!sidebar) return; + // If the sibear peak hasn't increased, that mean that there are no more + // activities, and we can stop calling new subscriptions. + // XXX This is hacky! We need to know excatly and reactively how many + // activities there are, we probably want to denormalize this number + // dirrectly into card and board documents. + const nextPeakBefore = sidebar.callFirstWith(null, 'getNextPeak'); + sidebar.calculateNextPeak(); + const nextPeakAfter = sidebar.callFirstWith(null, 'getNextPeak'); + if (nextPeakBefore === nextPeakAfter) { + sidebar.callFirstWith(null, 'resetNextPeak'); + } + }); + } }); }, loadNextPage() { diff --git a/client/components/boards/boardHeader.js b/client/components/boards/boardHeader.js index 7611e705a..22408b3c6 100644 --- a/client/components/boards/boardHeader.js +++ b/client/components/boards/boardHeader.js @@ -6,37 +6,6 @@ const DOWNCLS = 'fa-sort-down'; const UPCLS = 'fa-sort-up'; */ const sortCardsBy = new ReactiveVar(''); -Template.boardMenuPopup.events({ - 'click .js-rename-board': Popup.open('boardChangeTitle'), - 'click .js-custom-fields'() { - Sidebar.setView('customFields'); - Popup.back(); - }, - 'click .js-open-archives'() { - Sidebar.setView('archives'); - Popup.back(); - }, - 'click .js-change-board-color': Popup.open('boardChangeColor'), - 'click .js-change-language': Popup.open('changeLanguage'), - 'click .js-archive-board ': Popup.afterConfirm('archiveBoard', function() { - const currentBoard = Utils.getCurrentBoard(); - currentBoard.archive(); - // XXX We should have some kind of notification on top of the page to - // confirm that the board was successfully archived. - FlowRouter.go('home'); - }), - 'click .js-delete-board': Popup.afterConfirm('deleteBoard', function() { - const currentBoard = Utils.getCurrentBoard(); - Popup.back(); - Boards.remove(currentBoard._id); - FlowRouter.go('home'); - }), - 'click .js-outgoing-webhooks': Popup.open('outgoingWebhooks'), - 'click .js-import-board': Popup.open('chooseBoardSource'), - 'click .js-subtask-settings': Popup.open('boardSubtaskSettings'), - 'click .js-card-settings': Popup.open('boardCardSettings'), - 'click .js-minicard-settings': Popup.open('boardMinicardSettings'), -}); Template.boardChangeTitlePopup.events({ submit(event, templateInstance) {