Skip to content

Commit 252101c

Browse files
committed
made some dialog changes
1 parent 1c7e269 commit 252101c

File tree

4 files changed

+72
-221
lines changed

4 files changed

+72
-221
lines changed

app/classroom/[classroomId]/manage/buttons.tsx

Lines changed: 4 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,8 @@ export default function ClassroomManagementButtons({
122122
};
123123

124124
const deleteClassroomFunction = async (classroomId: number) => {
125-
// const confirmation = window.confirm(
125+
await deleteClassroom(classroomId)
126+
// const confirmation = window.confirm(
126127
// "Are you sure? This action can't be undone."
127128
// );
128129
// if (confirmation) {
@@ -132,29 +133,11 @@ export default function ClassroomManagementButtons({
132133
// "delete_success",
133134
// classroomId.toString()
134135
// );
136+
// redirect(delete_success)
135137
router.push(`/classroom?delete_success=${classroomId.toString()}`);
136-
// router.replace(delete_success.toString());
137-
138-
// router.replace("/classroom");
139-
140-
optimisticUpdateAndFetchClassroomData(
141-
classroomId,
142-
async () => deleteClassroom(classroomId),
143-
"remove",
144-
setUserAndClassData
145-
);
146-
toast({
147-
title: "Successfully deleted classroom.",
148-
});
149-
150-
// Redirect to the classrooms page after deletion
151-
// } else {
152-
// console.log("Classroom deletion cancelled."); //TODO: remove log message
153-
// }
154138
};
155139

156140
function archiveClassroom() {
157-
router.push(`/classroom?archive_success=${classroomId.toString()}`);
158141
optimisticUpdateAndFetchClassroomData(
159142
classroomId,
160143
async () => setArchiveStatusClassroom(classroomId, true),
@@ -166,6 +149,7 @@ export default function ClassroomManagementButtons({
166149
toast({
167150
title: "Successfully archived classroom.",
168151
});
152+
router.push(`/classroom?archive_success=${classroomId.toString()}`);
169153
}
170154

171155
return (

app/classroom/classroomList.tsx

Lines changed: 66 additions & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
"use client";
2-
import { useContext, useState } from "react";
2+
import { useContext, useEffect, useState } from "react";
33
import {
44
deleteClassroom,
55
getCurrentUserId,
@@ -89,65 +89,67 @@ export default function ClassroomList() {
8989
setUserAndClassData(refreshedData);
9090
}
9191
};
92+
// useEffect(() => {
93+
// const joinedClassSuccess = searchParams.get("join_success");
94+
// if (joinedClassSuccess && !isNaN(Number(joinedClassSuccess))) {
95+
// const joinClassInfo = userAndClassData.classroomsData.find(
96+
// (x) => x.id === Number(joinedClassSuccess)
97+
// );
98+
// if (joinClassInfo) {
99+
// refreshClassrooms();
100+
// toast({
101+
// description: (
102+
// <div>
103+
// Successfully joined classroom
104+
// <span className="font-bold"> {joinClassInfo.name}</span>!
105+
// </div>
106+
// ),
107+
// duration: 10000,
108+
// });
109+
// }
110+
// }
92111

93-
const joinedClassSuccess = searchParams.get("join_success");
94-
if (joinedClassSuccess && !isNaN(Number(joinedClassSuccess))) {
95-
const joinClassInfo = userAndClassData.classroomsData.find(
96-
(x) => x.id === Number(joinedClassSuccess)
97-
);
98-
if (joinClassInfo) {
99-
toast({
100-
description: (
101-
<div>
102-
Successfully joined classroom
103-
<span className="font-bold">{joinClassInfo.name}</span>!
104-
</div>
105-
),
106-
duration: 10000,
107-
});
108-
refreshClassrooms();
109-
}
110-
}
112+
// const deleteClassSuccess = searchParams.get("delete_success");
111113

112-
const deleteClassSuccess = searchParams.get("delete_success");
114+
// if (deleteClassSuccess && !isNaN(Number(deleteClassSuccess))) {
115+
// const deleteClassInfo = userAndClassData.classroomsData.find(
116+
// (x) => x.id === Number(deleteClassSuccess)
117+
// );
118+
// if (deleteClassInfo) {
119+
// setUserAndClassData(userAndClassData);
120+
// // toast({
121+
// // description: (
122+
// // <div>
123+
// // Successfully deleted classroom
124+
// // <span className="font-bold">{deleteClassInfo.name}</span>!
125+
// // </div>
126+
// // ),
127+
// // duration: 10000,
128+
// // });
129+
// }
130+
// }
113131

114-
if (deleteClassSuccess && !isNaN(Number(deleteClassSuccess))) {
115-
const deleteClassInfo = userAndClassData.classroomsData.find(
116-
(x) => x.id === Number(deleteClassSuccess)
117-
);
118-
if (deleteClassInfo) {
119-
toast({
120-
description: (
121-
<div>
122-
Successfully deleted classroom
123-
<span className="font-bold">{deleteClassInfo.name}</span>!
124-
</div>
125-
),
126-
duration: 10000,
127-
});
128-
refreshClassrooms();
129-
}
130-
}
131-
132-
const archiveClassSuccess = searchParams.get("archiveClassSuccess");
132+
// const archiveClassSuccess = searchParams.get("archiveClassSuccess");
133133

134-
if (archiveClassSuccess && !isNaN(Number(archiveClassSuccess))) {
135-
const archiveClassInfo = userAndClassData.classroomsData.find(
136-
(x) => x.id === Number(archiveClassSuccess)
137-
);
138-
if (archiveClassInfo) {
139-
toast({
140-
description: (
141-
<div>
142-
Successfully archived classroom
143-
<span className="font-bold">{archiveClassInfo.name}</span>!
144-
</div>
145-
),
146-
duration: 10000,
147-
});
148-
refreshClassrooms();
149-
}
150-
}
134+
// if (archiveClassSuccess && !isNaN(Number(archiveClassSuccess))) {
135+
// const archiveClassInfo = userAndClassData.classroomsData.find(
136+
// (x) => x.id === Number(archiveClassSuccess)
137+
// );
138+
// if (archiveClassInfo) {
139+
// toast({
140+
// description: (
141+
// <div>
142+
// Successfully archived classroom
143+
// <span className="font-bold">{archiveClassInfo.name}</span>!
144+
// </div>
145+
// ),
146+
// duration: 10000,
147+
// });
148+
// refreshClassrooms();
149+
// }
150+
// }
151+
152+
// }, [searchParams]);
151153

152154
function mapToListItem(
153155
classroomList: ClassroomWithMembers[],
@@ -406,11 +408,16 @@ export default function ClassroomList() {
406408
(classroom) => classroom.admin_user_id != userId
407409
);
408410

409-
const addClassroom = async () => {
411+
const addClassroom = async (classId: number) => {
410412
if (newClassName.length != 0) {
411413
try {
412-
const userId = await getCurrentUserId();
413-
const result = await newClassroom(newClassName, userId);
414+
const result = await optimisticUpdateAndFetchClassroomData(
415+
classId,
416+
async () => newClassroom(newClassName, userId),
417+
{ archived: true },
418+
setUserAndClassData,
419+
refreshClassrooms
420+
);
414421
if (!result) {
415422
// setResultText(`Error while making classroom!`);
416423
return;

app/classroom/clientUtils.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,9 @@ export const optimisticUpdateAndFetchClassroomData = async <
3636
return classroom;
3737
}),
3838
}));
39-
await action();
39+
const returnVal = await action();
4040
if (refreshFunction) {
4141
refreshFunction();
4242
}
43+
return returnVal;
4344
};

components/ui/alert-dialog 2.tsx

Lines changed: 0 additions & 141 deletions
This file was deleted.

0 commit comments

Comments
 (0)