fix(cron): reset checklists as needed

This commit is contained in:
Sabe Jones
2021-08-18 23:48:42 -05:00
committed by SabreCat
parent 603cc93957
commit fb216fba8e

View File

@@ -46,14 +46,20 @@ async function updateTeamTasks (team) {
} }
}); });
forEach(tasksByType.dailys, daily => { forEach(tasksByType.dailys, daily => {
let processChecklist = false;
if (daily.completed) { if (daily.completed) {
processChecklist = true;
daily.completed = false; daily.completed = false;
} else if (shouldDo(team.cron.lastProcessed, daily, teamLeader.preferences)) { } else if (shouldDo(team.cron.lastProcessed, daily, teamLeader.preferences)) {
processChecklist = true;
const delta = TASK_VALUE_CHANGE_FACTOR ** daily.value; const delta = TASK_VALUE_CHANGE_FACTOR ** daily.value;
daily.value -= delta; daily.value -= delta;
if (daily.value < MIN_TASK_VALUE) daily.value = MIN_TASK_VALUE; if (daily.value < MIN_TASK_VALUE) daily.value = MIN_TASK_VALUE;
} }
daily.isDue = shouldDo(new Date(), daily, teamLeader.preferences); daily.isDue = shouldDo(new Date(), daily, teamLeader.preferences);
if (processChecklist && daily.checklist.length > 0) {
daily.checklist.forEach(i => { i.completed = false; });
}
toSave.push(daily.save()); toSave.push(daily.save());
}); });