mirror of
https://github.com/plankanban/planka.git
synced 2025-12-20 17:25:39 +03:00
Initial commit
This commit is contained in:
27
server/api/controllers/notifications/index.js
Executable file
27
server/api/controllers/notifications/index.js
Executable file
@@ -0,0 +1,27 @@
|
||||
module.exports = {
|
||||
fn: async function(inputs, exits) {
|
||||
const { currentUser } = this.req;
|
||||
|
||||
const notifications = await sails.helpers.getNotificationsForUser(
|
||||
currentUser.id
|
||||
);
|
||||
|
||||
const actionIds = sails.helpers.mapRecords(notifications, 'actionId');
|
||||
const actions = await sails.helpers.getActions(actionIds);
|
||||
|
||||
const cardIds = sails.helpers.mapRecords(notifications, 'cardId');
|
||||
const cards = await sails.helpers.getCards(cardIds);
|
||||
|
||||
const userIds = sails.helpers.mapRecords(actions, 'userId', true);
|
||||
const users = await sails.helpers.getUsers(userIds);
|
||||
|
||||
return exits.success({
|
||||
items: notifications,
|
||||
included: {
|
||||
users,
|
||||
cards,
|
||||
actions
|
||||
}
|
||||
});
|
||||
}
|
||||
};
|
||||
35
server/api/controllers/notifications/update.js
Executable file
35
server/api/controllers/notifications/update.js
Executable file
@@ -0,0 +1,35 @@
|
||||
module.exports = {
|
||||
inputs: {
|
||||
ids: {
|
||||
type: 'string',
|
||||
required: true,
|
||||
regex: /^[0-9]+(,[0-9]+)*$/
|
||||
},
|
||||
isRead: {
|
||||
type: 'boolean'
|
||||
}
|
||||
},
|
||||
|
||||
exits: {
|
||||
notFound: {
|
||||
responseType: 'notFound'
|
||||
}
|
||||
},
|
||||
|
||||
fn: async function(inputs, exits) {
|
||||
const { currentUser } = this.req;
|
||||
|
||||
const values = _.pick(inputs, ['isRead']);
|
||||
|
||||
const notifications = await sails.helpers.updateNotificationsForUser(
|
||||
inputs.ids.split(','),
|
||||
currentUser,
|
||||
values,
|
||||
this.req
|
||||
);
|
||||
|
||||
return exits.success({
|
||||
items: notifications
|
||||
});
|
||||
}
|
||||
};
|
||||
Reference in New Issue
Block a user