fix: add some better detection logic for assements widget #429

This commit is contained in:
2026-04-23 17:26:58 +09:30
parent fcc856e798
commit 01cd5d1428
2 changed files with 20 additions and 3 deletions
+10 -1
View File
@@ -113,7 +113,16 @@ export async function loadHomePage() {
callHomeTimetable(TodayFormatted, true);
const activeClass = classes.find((c: any) => c.hasOwnProperty("active"));
const activeSubjects = activeClass?.subjects || [];
const activeYear = activeClass?.year;
const allSubjectsInYear = classes
.filter((c: any) => c.year === activeYear)
.flatMap((c: any) => c.subjects || []);
const seen = new Set<string>();
const activeSubjects = allSubjectsInYear.filter((s: any) => {
if (seen.has(s.code)) return false;
seen.add(s.code);
return true;
});
const activeSubjectCodes = activeSubjects.map((s: any) => s.code);
const currentAssessments = assessments
.filter((a: any) => activeSubjectCodes.includes(a.code))