1
0
Fork 0
mirror of https://github.com/plankanban/planka.git synced 2025-07-18 20:59:44 +02:00
planka/server/api/helpers/create-project.js

51 lines
989 B
JavaScript

module.exports = {
inputs: {
values: {
type: 'json',
required: true,
},
user: {
type: 'ref',
required: true,
},
request: {
type: 'ref',
},
withProjectMembership: {
type: 'boolean',
defaultsTo: false,
},
},
async fn(inputs, exits) {
const project = await Project.create(inputs.values).fetch();
const projectMembership = await ProjectMembership.create({
projectId: project.id,
userId: inputs.user.id,
}).fetch();
sails.sockets.broadcast(
`user:${projectMembership.userId}`,
'projectCreate',
{
item: project,
included: {
users: [inputs.user],
projectMemberships: [projectMembership],
boards: [],
},
},
inputs.request,
);
return exits.success(
inputs.withProjectMembership
? {
project,
projectMembership,
}
: project,
);
},
};