diff options
author | Romulus Tsai 蔡仲明 <urakagi@gmail.com> | 2020-05-14 16:45:21 +0800 |
---|---|---|
committer | Romulus Tsai 蔡仲明 <urakagi@gmail.com> | 2020-05-14 16:45:21 +0800 |
commit | 5d8cca40d217b6a3895f1f6eb154b6aba9576b37 (patch) | |
tree | 697e686168f41fef0da5903722bbda98e17d0ff0 /models/users.js | |
parent | cfcc73724fcd394150d1b815d0a7a4c466e216b5 (diff) | |
parent | 9c6cd51ca720502cc993451505f95a43ef16a707 (diff) | |
download | wekan-5d8cca40d217b6a3895f1f6eb154b6aba9576b37.tar.gz wekan-5d8cca40d217b6a3895f1f6eb154b6aba9576b37.tar.bz2 wekan-5d8cca40d217b6a3895f1f6eb154b6aba9576b37.zip |
Merge branch 'master' of https://github.com/wekan/wekan
Diffstat (limited to 'models/users.js')
-rw-r--r-- | models/users.js | 41 |
1 files changed, 40 insertions, 1 deletions
diff --git a/models/users.js b/models/users.js index a1bc5b0f..1a021bb7 100644 --- a/models/users.js +++ b/models/users.js @@ -1240,6 +1240,25 @@ if (Meteor.isServer) { Authentication.checkLoggedIn(req.userId); const data = Meteor.users.findOne({ _id: req.userId }); delete data.services; + + // get all boards where the user is member of + let boards = Boards.find( + { + type: 'board', + 'members.userId': req.userId, + }, + { + fields: { _id: 1, members: 1 }, + }, + ); + boards = boards.map(b => { + const u = b.members.find(m => m.userId === req.userId); + delete u.userId; + u.boardId = b._id; + return u; + }); + + data.boards = boards; JsonRoutes.sendResult(res, { code: 200, data, @@ -1292,9 +1311,29 @@ if (Meteor.isServer) { try { Authentication.checkUserId(req.userId); const id = req.params.userId; + + // get all boards where the user is member of + let boards = Boards.find( + { + type: 'board', + 'members.userId': id, + }, + { + fields: { _id: 1, members: 1 }, + }, + ); + boards = boards.map(b => { + const u = b.members.find(m => m.userId === id); + delete u.userId; + u.boardId = b._id; + return u; + }); + + const user = Meteor.users.findOne({ _id: id }); + user.boards = boards; JsonRoutes.sendResult(res, { code: 200, - data: Meteor.users.findOne({ _id: id }), + data: user, }); } catch (error) { JsonRoutes.sendResult(res, { |