From 5b490df7b9956f74c22571006c72e09dbcaff85e Mon Sep 17 00:00:00 2001
From: Zaid Ahmad <109442753+zaidahmad16@users.noreply.github.com>
Date: Wed, 27 May 2026 15:15:23 -0400
Subject: [PATCH] fix: only show reviews matching the current course
---
frontend/app/map/components/CoursePanel.jsx | 14 ++++++++++----
1 file changed, 10 insertions(+), 4 deletions(-)
diff --git a/frontend/app/map/components/CoursePanel.jsx b/frontend/app/map/components/CoursePanel.jsx
index 998fdbc..eb6fef9 100644
--- a/frontend/app/map/components/CoursePanel.jsx
+++ b/frontend/app/map/components/CoursePanel.jsx
@@ -255,7 +255,7 @@ export const CoursePanel = ({ node, onClose, isMobile }) => {
{group.term}
{group.instructors.map(({ name: profName, rmp }) => (
-
+
))}
))}
@@ -267,9 +267,15 @@ export const CoursePanel = ({ node, onClose, isMobile }) => {
)
}
-const ProfCard = ({ name, rmp }) => {
+const ProfCard = ({ name, rmp, courseCode }) => {
const [showReviews, setShowReviews] = useState(false)
- const reviews = rmp?.ratings ?? []
+ const allReviews = rmp?.ratings ?? []
+ const normalise = s => s?.toLowerCase().replace(/\s+/g, '') ?? ''
+ const courseKey = normalise(courseCode)
+ const courseReviews = courseKey
+ ? allReviews.filter(r => normalise(r.course).includes(courseKey) || courseKey.includes(normalise(r.course).slice(0, 6)))
+ : []
+ const reviews = courseReviews.slice(0, 5)
return (
{
fontFamily: 'var(--font-body)',
}}
>
- {showReviews ? 'Hide reviews' : `Show ${reviews.length} recent review${reviews.length !== 1 ? 's' : ''}`}
+ {showReviews ? 'Hide reviews' : `Show ${reviews.length} review${reviews.length !== 1 ? 's' : ''}`}
{showReviews && (