From 436dd28c5d69fba2e82394877a2796e2ed0509b9 Mon Sep 17 00:00:00 2001 From: Kamui Date: Tue, 10 Oct 2023 21:58:20 -0500 Subject: [PATCH] fix: broken req validation --- src/server/trpc/router/validator.ts | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/server/trpc/router/validator.ts b/src/server/trpc/router/validator.ts index dbca844a1..77b49326b 100644 --- a/src/server/trpc/router/validator.ts +++ b/src/server/trpc/router/validator.ts @@ -51,7 +51,7 @@ export const validatorRouter = router({ let year = new Date().getFullYear(); // If plan has no semesters, default to current year. if (planData.semesters.length > 0) { // If plan has semesters, default to first semester's year. - year = planData.semesters[0].year; + year = Math.min(...planData.semesters.map((sem) => sem.year)); } const coursesFromAPI: PlatformCourse[] = await courseCache.getCourses(year); @@ -74,7 +74,10 @@ export const validatorRouter = router({ coreqs: course.corequisites, co_or_pre_requisites: course.co_or_pre_requisites, }); - courseMapWithIdKey.set(course.id, `${course.subject_prefix} ${course.course_number}`); + courseMapWithIdKey.set( + course.internal_course_number, + `${course.subject_prefix} ${course.course_number}`, + ); } /* Hash to store pre req data. @@ -111,7 +114,7 @@ export const validatorRouter = router({ ): Array<[Array, number]> => { const prereqNotMet: Array<[Array, number]> = []; let count = 0; - if (requirements.options.length === 0) { + if (!requirements || requirements.options.length === 0) { return []; } const temp: [Array, number] = [[], 0]; @@ -159,7 +162,7 @@ export const validatorRouter = router({ ): Array<[Array, number]> => { const coreqNotMet: Array<[Array, number]> = []; let count = 0; - if (requirements.options.length === 0) { + if (!requirements || requirements.options.length === 0) { return []; } const temp: [Array, number] = [[], 0]; @@ -208,7 +211,7 @@ export const validatorRouter = router({ ): Array<[Array, number]> => { const coreqNotMet: Array<[Array, number]> = []; let count = 0; - if (requirements.options.length === 0) { + if (!requirements || requirements.options.length === 0) { return []; } const temp: [Array, number] = [[], 0];