From d3499acd7b05abaa719da04d53024c8fd5873e98 Mon Sep 17 00:00:00 2001 From: Henry Oswald Date: Fri, 14 Aug 2015 14:11:53 +0100 Subject: [PATCH] pass options through stating how long ago want to archive from and limit --- .../InactiveData/InactiveProjectController.coffee | 6 ++++-- .../InactiveData/InactiveProjectManager.coffee | 13 ++++++++----- 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/services/web/app/coffee/Features/InactiveData/InactiveProjectController.coffee b/services/web/app/coffee/Features/InactiveData/InactiveProjectController.coffee index 802c56cbdf..5f6d9c2c2a 100644 --- a/services/web/app/coffee/Features/InactiveData/InactiveProjectController.coffee +++ b/services/web/app/coffee/Features/InactiveData/InactiveProjectController.coffee @@ -6,11 +6,13 @@ module.exports = deactivateOldProjects: (req, res)-> logger.log "recived request to deactivate old projects" - InactiveProjectManager.deactivateOldProjects 10, (err)-> + numberOfProjectsToArchive = req.query.limit + ageOfProjects = req.query.daysOld + InactiveProjectManager.deactivateOldProjects numberOfProjectsToArchive, ageOfProjects, (err, projectsDeactivated)-> if err? res.sendStatus(500) else - res.sendStatus(200) + res.send(projectsDeactivated) deactivateProject: (req, res)-> diff --git a/services/web/app/coffee/Features/InactiveData/InactiveProjectManager.coffee b/services/web/app/coffee/Features/InactiveData/InactiveProjectManager.coffee index 3d146692fd..3f277fa931 100644 --- a/services/web/app/coffee/Features/InactiveData/InactiveProjectManager.coffee +++ b/services/web/app/coffee/Features/InactiveData/InactiveProjectManager.coffee @@ -25,11 +25,11 @@ module.exports = InactiveProjectManager = return callback(err) ProjectUpdateHandler.markAsActive project_id, callback - deactivateOldProjects: (limit, callback)-> - - sixMonthsAgo = new Date() - (MILISECONDS_IN_DAY * 1) + deactivateOldProjects: (limit = 10, daysOld = 360, callback)-> + oldProjectDate = new Date() - (MILISECONDS_IN_DAY * daysOld) + logger.log oldProjectDate:oldProjectDate, limit:limit, daysOld:daysOld, "starting process of deactivating old projects" Project.find() - .where("lastOpened").lt(sixMonthsAgo) + .where("lastOpened").lt(oldProjectDate) .where("inactive").ne(true) .select("_id") .limit(limit) @@ -40,7 +40,10 @@ module.exports = InactiveProjectManager = return (cb)-> InactiveProjectManager.deactivateProject project._id, cb logger.log numberOfProjects:projects?.length, "deactivating projects" - async.series jobs, callback + async.series jobs, (err)-> + if err? + logger.err err:err, "error deactivating projects" + callback err, projects deactivateProject: (project_id, callback)->