Skip to content

Commit 519f4d4

Browse files
committed
Fix the refresh in compare page not loaded preselected timetables
1 parent cbb219e commit 519f4d4

File tree

1 file changed

+6
-10
lines changed

1 file changed

+6
-10
lines changed

course-matrix/frontend/src/pages/Compare/CompareTimetables.tsx

Lines changed: 6 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -32,13 +32,12 @@ export const CompareTimetables = () => {
3232
const [timetable1, setTimetable1] = useState<Timetable>();
3333
const [timetable2, setTimetable2] = useState<Timetable>();
3434
const [queryParams] = useSearchParams();
35-
const [loadedPreselectedTimetables, setLoadedPreselectedTimetables] =
36-
useState(false);
3735

3836
const preselectedTimetableId1 = queryParams.get("id1");
3937
const preselectedTimetableId2 = queryParams.get("id2");
4038
const preselectedUserId1 = queryParams.get("userId1");
4139
const preselectedUserId2 = queryParams.get("userId2");
40+
const needsToLoadTimetable = preselectedTimetableId1 !== null && preselectedTimetableId2 !== null && preselectedUserId1 !== null && preselectedUserId2 !== null;
4241

4342
const compareForm = useForm<z.infer<typeof CompareFormSchema>>({
4443
resolver: zodResolver(CompareFormSchema),
@@ -71,12 +70,16 @@ export const CompareTimetables = () => {
7170
}))
7271
.sort(sortTimetablesComparator);
7372

73+
const [loadedPreselectedTimetables, setLoadedPreselectedTimetables] = useState(!needsToLoadTimetable);
74+
7475
useEffect(() => {
7576
if (
7677
preselectedTimetableId1 &&
7778
preselectedUserId1 &&
7879
preselectedTimetableId2 &&
7980
preselectedUserId2 &&
81+
myTimetablesData &&
82+
sharedWithMeTimetablesData &&
8083
!loadedPreselectedTimetables
8184
) {
8285
setTimetable1(
@@ -95,14 +98,7 @@ export const CompareTimetables = () => {
9598
);
9699
setLoadedPreselectedTimetables(true);
97100
}
98-
}, [
99-
preselectedTimetableId1,
100-
preselectedUserId1,
101-
preselectedTimetableId2,
102-
preselectedUserId2,
103-
allTimetables,
104-
loadedPreselectedTimetables,
105-
]);
101+
}, [preselectedTimetableId1, preselectedUserId1, preselectedTimetableId2, preselectedUserId2, allTimetables, loadedPreselectedTimetables, myTimetablesData, sharedWithMeTimetablesData]);
106102

107103
const onSubmit = useCallback(
108104
(values: z.infer<typeof CompareFormSchema>) => {

0 commit comments

Comments
 (0)