From 136dcd27a9ff02b95fd21013d84937b2a3584f65 Mon Sep 17 00:00:00 2001 From: Keith Holliday Date: Fri, 16 Jun 2017 12:28:42 -0600 Subject: [PATCH] Prevented modal close and showed correct due class in modal --- website/client-old/js/controllers/notificationCtrl.js | 2 ++ website/client-old/js/directives/task.directive.js | 2 +- website/common/script/libs/taskClasses.js | 7 +++++-- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/website/client-old/js/controllers/notificationCtrl.js b/website/client-old/js/controllers/notificationCtrl.js index febd0c6e74..5a72fbaf10 100644 --- a/website/client-old/js/controllers/notificationCtrl.js +++ b/website/client-old/js/controllers/notificationCtrl.js @@ -42,10 +42,12 @@ habitrpg.controller('NotificationCtrl', showCompleted: false, type: 'daily', }; + modalScope.processingYesterdailies = true; $scope.yesterDailiesModalOpen = true; $rootScope.openModal('yesterDailies', { scope: modalScope, + backdrop: 'static', controller: ['$scope', 'Tasks', 'User', '$rootScope', function ($scope, Tasks, User, $rootScope) { $rootScope.$on('task:scored', function (event, data) { var task = data.task; diff --git a/website/client-old/js/directives/task.directive.js b/website/client-old/js/directives/task.directive.js index e1f8733c76..f7d527bdd7 100644 --- a/website/client-old/js/directives/task.directive.js +++ b/website/client-old/js/directives/task.directive.js @@ -17,7 +17,7 @@ scope: true, link: function($scope, element, attrs) { $scope.getClasses = function (task, user, list, main) { - return Shared.taskClasses(task, user.filters, user.preferences.dayStart, user.lastCron, list.showCompleted, main); + return Shared.taskClasses(task, user.filters, user.preferences.dayStart, user.lastCron, list.showCompleted, main, $scope.processingYesterdailies); } $scope.showNoteDetails = function (task) { diff --git a/website/common/script/libs/taskClasses.js b/website/common/script/libs/taskClasses.js index f1082a9f8d..83df0470e7 100644 --- a/website/common/script/libs/taskClasses.js +++ b/website/common/script/libs/taskClasses.js @@ -1,6 +1,7 @@ import { shouldDo, } from '../cron'; +import moment from 'moment'; /* Task classes given everything about the class @@ -8,7 +9,7 @@ Task classes given everything about the class // TODO move to the client -module.exports = function taskClasses (task, filters = [], dayStart = 0, lastCron = Number(new Date()), showCompleted = false, main = false) { +module.exports = function taskClasses (task, filters = [], dayStart = 0, lastCron = Number(new Date()), showCompleted = false, main = false, processingYesterdailies = false) { if (!task) { return ''; } @@ -34,7 +35,9 @@ module.exports = function taskClasses (task, filters = [], dayStart = 0, lastCro } if (type === 'todo' || type === 'daily') { - let notDue = !shouldDo(Number(new Date()), task, { dayStart }); + let dayShouldDo = moment(); + if (processingYesterdailies) dayShouldDo.subtract(1, 'days'); + let notDue = !shouldDo(Number(dayShouldDo), task, { dayStart }); let isNotDueDaily = type === 'daily' && notDue; if (completed || isNotDueDaily) {