v3 adapt v2: port tags, cast, cron, deletUser and removeMember. Fix a few bugs in v3

This commit is contained in:
Matteo Pagliazzi
2016-04-06 19:28:43 +02:00
parent 08239345b5
commit b431b02012
25 changed files with 409 additions and 218 deletions
+10 -1
View File
@@ -1,6 +1,7 @@
import { authWithHeaders } from '../../middlewares/api-v3/auth';
import cron from '../../middlewares/api-v3/cron';
import { model as Tag } from '../../models/tag';
import { model as Tasks } from '../../models/task';
import {
NotFound,
} from '../../libs/api-v3/errors';
@@ -96,7 +97,6 @@ api.updateTag = {
let user = res.locals.user;
req.checkParams('tagId', res.t('tagIdRequired')).notEmpty().isUUID();
// TODO check that req.body isn't empty
let tagId = req.params.tagId;
@@ -139,6 +139,15 @@ api.deleteTag = {
if (!tag) throw new NotFound(res.t('tagNotFound'));
tag.remove();
// Remove from all the tasks TODO test
await Tasks.Task.update({
userId: user._id,
}, {
$pull: {
tags: tag._id,
},
}, {multi: true}).exec();
await user.save();
res.respond(200, {});
},
+1 -1
View File
@@ -373,7 +373,7 @@ api.castSpell = {
let response = {
tasks: isUserModified ? _.rest(saved) : saved,
};
if (isUserModified) res.user = user;
if (isUserModified) response.user = user;
res.respond(200, response);
} else if (targetType === 'party' || targetType === 'user') {
let party = await Group.getGroup({groupId: 'party', user});