summaryrefslogtreecommitdiffstats
path: root/models/users.js
diff options
context:
space:
mode:
authorNico <paetni1@gmail.com>2020-05-03 01:29:28 +0200
committerNico <paetni1@gmail.com>2020-05-03 01:29:28 +0200
commitec03bbe260e3a7e1298ac7cf526b41c7d2207e91 (patch)
tree6f47c7c3d1737b36ddf30966bb07b085ef184a21 /models/users.js
parent3cc0a93e0ea2399d239923e3a89d49d93a979684 (diff)
downloadwekan-ec03bbe260e3a7e1298ac7cf526b41c7d2207e91.tar.gz
wekan-ec03bbe260e3a7e1298ac7cf526b41c7d2207e91.tar.bz2
wekan-ec03bbe260e3a7e1298ac7cf526b41c7d2207e91.zip
API add boards to json where user is member of
Diffstat (limited to 'models/users.js')
-rw-r--r--models/users.js41
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, {