diff options
author | Justin Reynolds <justinr1234@gmail.com> | 2019-07-18 13:06:25 -0500 |
---|---|---|
committer | Justin Reynolds <justinr1234@gmail.com> | 2019-07-18 13:06:25 -0500 |
commit | 66b45ed35c2bd3768dd479bdc3b0e9988de7825b (patch) | |
tree | 09b1a3c2756ceb98224bc8a1dd6f4e1732570e71 | |
parent | 34bd1e9c49c27bf112f02d6844e74101ab801f96 (diff) | |
download | wekan-66b45ed35c2bd3768dd479bdc3b0e9988de7825b.tar.gz wekan-66b45ed35c2bd3768dd479bdc3b0e9988de7825b.tar.bz2 wekan-66b45ed35c2bd3768dd479bdc3b0e9988de7825b.zip |
Fix invites
-rw-r--r-- | client/components/boards/boardsList.js | 4 | ||||
-rw-r--r-- | models/boards.js | 13 |
2 files changed, 15 insertions, 2 deletions
diff --git a/client/components/boards/boardsList.js b/client/components/boards/boardsList.js index cc586b1f..b1371747 100644 --- a/client/components/boards/boardsList.js +++ b/client/components/boards/boardsList.js @@ -82,13 +82,13 @@ BlazeComponent.extendComponent({ }, 'click .js-accept-invite'() { const boardId = this.currentData()._id; - Meteor.user().removeInvite(boardId); + Meteor.call('acceptInvite', boardId); }, 'click .js-decline-invite'() { const boardId = this.currentData()._id; Meteor.call('quitBoard', boardId, (err, ret) => { if (!err && ret) { - Meteor.user().removeInvite(boardId); + Meteor.call('acceptInvite', boardId); FlowRouter.go('home'); } }); diff --git a/models/boards.js b/models/boards.js index 2346ecb6..2117ff7c 100644 --- a/models/boards.js +++ b/models/boards.js @@ -952,6 +952,19 @@ if (Meteor.isServer) { } else throw new Meteor.Error('error-board-notAMember'); } else throw new Meteor.Error('error-board-doesNotExist'); }, + acceptInvite(boardId) { + check(boardId, String); + const board = Boards.findOne(boardId); + if (!board) { + throw new Meteor.Error('error-board-doesNotExist'); + } + + Meteor.users.update(Meteor.userId(), { + $pull: { + 'profile.invitedBoards': boardId, + }, + }); + }, }); Meteor.methods({ |