From 9a5af96ba158fb4d5941e4b797d441c411e0fb26 Mon Sep 17 00:00:00 2001 From: Tyler Renelle Date: Mon, 11 Nov 2013 20:16:54 -0800 Subject: [PATCH] [#1763] migration to restore NaN tasks.value to 0 --- migrations/20131111_task_NaN.js | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 migrations/20131111_task_NaN.js diff --git a/migrations/20131111_task_NaN.js b/migrations/20131111_task_NaN.js new file mode 100644 index 0000000000..16e6788003 --- /dev/null +++ b/migrations/20131111_task_NaN.js @@ -0,0 +1,15 @@ +// This migration has already been run in the past. It's vital to fix these users presently, but we need to find +// out why task values are ever getting in as NaN. My guess is API PUT /tasks/:tid routes +db.users.find({},{habits:1,dailys:1,todos:1,rewards:1}).forEach(function(user){ + _.each(['habits','dailys','todos','rewards'], function(type){ + _.each(user[type], function(task){ + task.value = +task.value; + if (_.isNaN(task.value)) { + task.value = 0; + print(user._id); + } + }) + }) + + db.users.update({_id:user._id}, {$set:{habits: user.habits, dailys: user.dailys, todos: user.todos, rewards: user.rewards}}); +}); \ No newline at end of file