Планировщик задач
agendaConnect : 'mongodb://localhost/ugmk_agenda'AddTask = function(jobname,job,interval){} // добавление задания
RemoveTask = function(jobname){} // удаление задания
EnsureTaskRunning = function(jobname,job){} // проверка на то, что задача есть в спискеvar Cron = require(__base+'src/agenda.js');
Cron.Events.on('ready', function() {
ModulesHelper.MSSettings(function(err,Set){
if (Set.usecron){
Cron.EnsureTaskRunning('git_sync',function(job, done){
GitHub.Sync(false,done);
});
}
})
})
router.put('/settings', HP.TaskAccess("IsModulesAdmin"), function (req, res, next) {
ModulesHelper.MSSettings(function(err,Settings){
var Update = req.body;
for (var K in Update) Settings[K] = Update[K];
Settings.save(function(err){
if (Settings.usecron){
Cron.AddTask('git_sync',function(job, done){
GitHub.SyncModules(false,done);
},"1 day");
} else {
Cron.RemoveTask('git_sync');
}
ModulesHelper.ReCompile(Settings.DoBundle,function(err){
return res.json({});
});
})
})
})Last updated