fix #1611, @lefnire added a migration for deleted tags, this time it should not delete all of them ;)

This commit is contained in:
Matteo Pagliazzi 2013-11-22 20:23:41 +01:00
parent e722a064c8
commit 8e5edbbef8
2 changed files with 17 additions and 0 deletions

View file

@ -0,0 +1,13 @@
// Cleanup broken tags
// -------------------------
db.users.find().forEach(function(user){
var tasks = user.habits.concat(user.dailys).concat(user.todos).concat(user.rewards);
_.each(tasks, function(task){
_.each(task.tags, function(value, key){ //value is true, key is tag.id
if (!_.find(user.tags,{id:key})) delete task.tags[key];
});
});
db.users.update({_id:user._id}, user);
});

View file

@ -471,6 +471,10 @@ api.deleteTag = function(req, res){
delete task.tags[tag.id];
})
})
user.markModified('habits');
user.markModified('dailys');
user.markModified('todos');
user.markModified('rewards');
user.save(function(err,saved){
if (err) return res.json(500, {err: err});
res.send(204);