1
0
Fork 0
mirror of https://github.com/plankanban/planka.git synced 2025-07-25 08:09:44 +02:00

Initial commit

This commit is contained in:
Maksim Eltyshev 2019-08-31 04:07:25 +05:00
commit 5ffef61fe7
613 changed files with 91659 additions and 0 deletions

View file

@ -0,0 +1,30 @@
module.exports = {
inputs: {
name: {
type: 'string',
required: true
}
},
fn: async function(inputs, exits) {
const { currentUser } = this.req;
const values = _.pick(inputs, ['name']);
const { project, projectMembership } = await sails.helpers.createProject(
values,
currentUser,
this.req,
true
);
return exits.success({
item: project,
included: {
users: [currentUser],
projectMemberships: [projectMembership],
boards: []
}
});
}
};

View file

@ -0,0 +1,38 @@
const Errors = {
PROJECT_NOT_FOUND: {
notFound: 'Project is not found'
}
};
module.exports = {
inputs: {
id: {
type: 'number',
required: true
}
},
exits: {
notFound: {
responseType: 'notFound'
}
},
fn: async function(inputs, exits) {
let project = await Project.findOne(inputs.id);
if (!project) {
throw Errors.PROJECT_NOT_FOUND;
}
project = await sails.helpers.deleteProject(project, this.req);
if (!project) {
throw Errors.PROJECT_NOT_FOUND;
}
return exits.success({
item: project
});
}
};

View file

@ -0,0 +1,29 @@
module.exports = {
fn: async function(inputs, exits) {
const { currentUser } = this.req;
const projectIds = await sails.helpers.getMembershipProjectIdsForUser(
currentUser.id
);
const projects = await sails.helpers.getProjects(projectIds);
const {
userIds,
projectMemberships
} = await sails.helpers.getMembershipUserIdsForProject(projectIds, true);
const users = await sails.helpers.getUsers(userIds);
const boards = await sails.helpers.getBoardsForProject(projectIds);
return exits.success({
items: projects,
included: {
users,
projectMemberships,
boards
}
});
}
};

View file

@ -0,0 +1,44 @@
const Errors = {
PROJECT_NOT_FOUND: {
notFound: 'Project is not found'
}
};
module.exports = {
inputs: {
id: {
type: 'number',
required: true
},
name: {
type: 'string',
isNotEmptyString: true
}
},
exits: {
notFound: {
responseType: 'notFound'
}
},
fn: async function(inputs, exits) {
let project = await Project.findOne(inputs.id);
if (!project) {
throw Errors.PROJECT_NOT_FOUND;
}
const values = _.pick(inputs, ['name']);
project = await sails.helpers.updateProject(project, values, this.req);
if (!project) {
throw Errors.PROJECT_NOT_FOUND;
}
return exits.success({
item: project
});
}
};