From b1afc177aa4bfc4cbd9b847e40431db91666d9c3 Mon Sep 17 00:00:00 2001 From: Tyler Renelle Date: Sun, 19 Jan 2014 17:12:18 -0800 Subject: [PATCH] fix(todos): add dateCompleted to todos so they're archived 3 days after completion, not 3 days after creation. Fixes #2478 --- src/controllers/user.js | 2 +- src/models/task.js | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/controllers/user.js b/src/controllers/user.js index 524fb588f4..7263766615 100644 --- a/src/controllers/user.js +++ b/src/controllers/user.js @@ -463,7 +463,7 @@ api.batchUpdate = function(req, res, next) { }else if(response.wasModified){ // Preen 3-day past-completed To-Dos from Angular & mobile app response.todos = _.where(response.todos, function(t) { - return !t.completed || (t.challenge && t.challenge.id) || moment(t.created).isAfter(moment().subtract('days',3)); + return !t.completed || (t.challenge && t.challenge.id) || moment(t.dateCompleted).isAfter(moment().subtract('days',3)); }); res.json(200, response); diff --git a/src/models/task.js b/src/models/task.js index a5708e033b..e0a695a1d6 100644 --- a/src/models/task.js +++ b/src/models/task.js @@ -15,7 +15,7 @@ var _ = require('lodash'); var TaskSchema = { //_id:{type: String,'default': helpers.uuid}, id: {type: String,'default': shared.uuid}, - created: {type:Date, 'default':new Date}, + dateCreated: {type:Date, 'default':Date.now}, text: String, notes: {type: String, 'default': ''}, tags: {type: Schema.Types.Mixed, 'default': {}}, //{ "4ddf03d9-54bd-41a3-b011-ca1f1d2e9371" : true }, @@ -73,6 +73,7 @@ var TodoSchema = new Schema( _.defaults({ type: {type:String, 'default': 'todo'}, completed: {type: Boolean, 'default': false}, + dateCompleted: Date, date: String, // due date for todos // FIXME we're getting parse errors, people have stored as "today" and "3/13". Need to run a migration & put this back to type: Date collapseChecklist:collapseChecklist, checklist:checklist