Skip to content

Commit 8e5c632

Browse files
committed
Fix clicking the timetable card from Home Page
1 parent deca44f commit 8e5c632

File tree

3 files changed

+19
-22
lines changed

3 files changed

+19
-22
lines changed

course-matrix/frontend/src/pages/Home/Home.tsx

Lines changed: 7 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ import TimetableCard from "./TimetableCard";
44
import TimetableCompareButton from "./TimetableCompareButton";
55
import TimetableCreateNewButton from "./TimetableCreateNewButton";
66
import { useGetTimetablesQuery } from "../../api/timetableApiSlice";
7-
import { Link } from "react-router-dom";
87

98
export interface Timetable {
109
id: number;
@@ -73,18 +72,14 @@ const Home = () => {
7372
<p className="text-sm text-muted-foreground">Loading...</p>
7473
) : (
7574
data.map((timetable) => (
76-
<Link
77-
to={`/dashboard/timetable?edit=${timetable.id}`}
75+
<TimetableCard
76+
refetch={refetch}
7877
key={timetable.id}
79-
>
80-
<TimetableCard
81-
refetch={refetch}
82-
timetableId={timetable.id}
83-
title={timetable.timetable_title}
84-
lastEditedDate={new Date(timetable.updated_at)}
85-
owner={name}
86-
/>
87-
</Link>
78+
timetableId={timetable.id}
79+
title={timetable.timetable_title}
80+
lastEditedDate={new Date(timetable.updated_at)}
81+
owner={name}
82+
/>
8883
))
8984
)}
9085
</div>

course-matrix/frontend/src/pages/Home/TimetableCard.tsx

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ import { Pencil } from "lucide-react";
1111
import { useState } from "react";
1212
import TimetableCardKebabMenu from "./TimetableCardKebabMenu";
1313
import { useUpdateTimetableMutation } from "@/api/timetableApiSlice";
14+
import { Link } from "react-router-dom";
1415

1516
interface TimetableCardProps {
1617
refetch: () => void;
@@ -62,10 +63,12 @@ const TimetableCard = ({
6263
return (
6364
<Card className="w-full">
6465
<CardHeader>
65-
<img
66-
src="../../public/img/default-timetable-card-image.png"
67-
alt="Timetable default image"
68-
/>
66+
<Link to={`/dashboard/timetable?edit=${timetableId}`}>
67+
<img
68+
src="../../public/img/default-timetable-card-image.png"
69+
alt="Timetable default image"
70+
/>
71+
</Link>
6972
<div className="flex justify-between items-center">
7073
<CardTitle>
7174
<Input

course-matrix/frontend/src/pages/TimetableBuilder/TimetableBuilder.tsx

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -181,13 +181,12 @@ const TimetableBuilder = () => {
181181
form.setValue("offeringIds", existingOfferingIds);
182182
setLoadedOfferingIds(true);
183183

184-
const existingCourseCodes = (timetableEventsData?.courseEvents || []).map(
185-
(event) => event.event_name.split(" - ")[0].trim(),
184+
const existingCourseIds = existingOfferingIds.map(
185+
(offeringId) => offeringIdToCourseIdMap[offeringId],
186+
);
187+
const existingCourses = coursesData.filter((course) =>
188+
existingCourseIds.includes(course.id),
186189
);
187-
const existingCourses =
188-
coursesData?.filter((course: { code: string }) =>
189-
existingCourseCodes.includes(course.code),
190-
) || [];
191190
form.setValue("courses", existingCourses);
192191
setLoadedCourses(true);
193192

0 commit comments

Comments
 (0)