From 1f8915f5de54357a236f1a4106b50ef84acdff07 Mon Sep 17 00:00:00 2001 From: Matteo Pagliazzi Date: Thu, 24 Oct 2013 18:21:34 +0200 Subject: [PATCH] add api.deleteTag to batch update operations --- public/js/controllers/filtersCtrl.js | 5 +---- src/controllers/user.js | 11 +++++++++-- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/public/js/controllers/filtersCtrl.js b/public/js/controllers/filtersCtrl.js index 631db3c42d..86444d219c 100644 --- a/public/js/controllers/filtersCtrl.js +++ b/public/js/controllers/filtersCtrl.js @@ -37,10 +37,7 @@ habitrpg.controller("FiltersCtrl", ['$scope', '$rootScope', 'User', 'API_URL', ' _.each(user.tasks, function(task) { delete task.tags[tag.id]; }); - $http['delete'](API_URL + '/api/v1/user/tags/' + tag.id) - .error(function(data){ - alert(data); - }) + User.log({op:'delTag',data:{'tag':tag.id}}) } }]); diff --git a/src/controllers/user.js b/src/controllers/user.js index ecd75a3d28..7a3186d73d 100644 --- a/src/controllers/user.js +++ b/src/controllers/user.js @@ -668,7 +668,8 @@ api.buyGemsPaypalIPN = function(req, res) { */ api.deleteTag = function(req, res){ var user = res.locals.user; - var i = _.findIndex(user.tags, {id:req.params.tid}); + var tid = req.params.tid || req.body.tag; + var i = _.findIndex(user.tags, {id:tid}); if (~i) { var tag = user.tags[i]; delete user.filters[tag.id]; @@ -678,8 +679,11 @@ api.deleteTag = function(req, res){ delete user.tasks[task.id].tags[tag.id]; }); user.save(function(err,saved){ + if (err) return res.json(500, {err: err}); + // Need to use this until we found a way to update the ui for tasks when a tag is deleted + res.locals.wasModified = true; res.send(200); - }) + }); } else { res.json(400, {err:'Tag not found'}); } @@ -743,6 +747,9 @@ api.batchUpdate = function(req, res, next) { case "set": api.updateUser(req, res); break; + case "delTag": + api.deleteTag(req, res); + break; case "revive": api.revive(req, res); break;