From 9b3a61e5ccf4f01922a22b30daf7af8f4cd0519f Mon Sep 17 00:00:00 2001 From: Hykilpikonna Date: Sat, 21 Dec 2019 18:39:47 -0500 Subject: [PATCH] [O] Cache unread assignments --- src/pages/overall/overall.vue | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/pages/overall/overall.vue b/src/pages/overall/overall.vue index f50a536..774b5e1 100644 --- a/src/pages/overall/overall.vue +++ b/src/pages/overall/overall.vue @@ -53,7 +53,7 @@ import OverallLine from '@/pages/overall/overall-line/overall-line'; import OverallBar from '@/pages/overall/overall-bar/overall-bar'; import OverallCourse from '@/pages/overall/overall-course/overall-course'; - import Course from '@/logic/course'; + import Course, {Assignment} from '@/logic/course'; import {GPAUtils} from '@/logic/utils/gpa-utils'; @Component({ @@ -74,6 +74,8 @@ return GPAUtils.getGPA(this.courses); } + // For clear unread prompt + unread: Assignment[]; /** * On page load - check if the user has too many notifications */ @@ -83,11 +85,10 @@ if (!this.$cookies.isKey('IgnoreUnread')) { // Count unread - let unread = this.courses.reduce((p, c) => p + - c.assignments.reduce((p, a) => p + (a.unread ? 1 : 0), 0), 0); + this.unread = this.courses.flatMap(c => c.assignments.filter(a => a.unread)); // Prompt clear - if (unread > 15) + if (this.unread.length > 15) { this.promptClearNotification = true; }