diff --git a/migrations/20130129_add_missing_preferences.js b/migrations/20130129_add_missing_preferences.js index 745a365bd0..f4e7b55762 100644 --- a/migrations/20130129_add_missing_preferences.js +++ b/migrations/20130129_add_missing_preferences.js @@ -1,5 +1,5 @@ db.users.update( - {'preferences':{$exists:false}}, + {preferences:{$exists:false}}, {$set:{preferences:{gender: 'm', armorSet: 'v1'}}}, {multi:true} ) diff --git a/src/app/schema.coffee b/src/app/schema.coffee index 1efdd0044c..68d08611fb 100644 --- a/src/app/schema.coffee +++ b/src/app/schema.coffee @@ -56,4 +56,5 @@ module.exports.updateUser = (user, userObj) -> preened = _.filter(union, (val) -> _.contains(taskIds, val)) # There were indeed issues found, set the new list - user.set(path, preened) if _.size(preened) != _.size(userObj[path]) \ No newline at end of file + # TODO _.difference might still be empty for duplicates in one list? + user.set(path, preened) if _.difference(preened, userObj[path]).length != 0 diff --git a/src/server/cron.coffee b/src/server/cron.coffee index 931ba3e3c7..d0f2ed5b24 100644 --- a/src/server/cron.coffee +++ b/src/server/cron.coffee @@ -10,7 +10,7 @@ _ = require('underscore') module.exports.deleteStaleAccounts = -> un_registered = { "auth.local": {$exists: false} , "auth.facebook": {$exists: false} } - registered = registered = { $or: [ + registered = { $or: [ { 'auth.local': { $exists: true } }, { 'auth.facebook': { $exists: true} } ]}; @@ -34,5 +34,8 @@ module.exports.deleteStaleAccounts = -> if !!user.lastCron # for now ignore missing crons, still looking into why this is happening lastCron = new Date(user.lastCron) diff = Math.abs(moment(today).sod().diff(moment(lastCron).sod(), "days")) - if diff > 30 - removeAccount(collection, user._id) \ No newline at end of file + if diff > 10 + removeAccount(collection, user._id) + else + # cron was missing for some reason + collection.update {_id: user._id}, {$set:{lastCron: today}}, (err, res) -> throw err if err \ No newline at end of file