diff --git a/src/app/api/replies/route.ts b/src/app/api/replies/route.ts index 310a1b25..a2cfea65 100644 --- a/src/app/api/replies/route.ts +++ b/src/app/api/replies/route.ts @@ -58,15 +58,18 @@ export async function GET(req: Request) { } if (doubt.type === 'teacher') { - const [membership] = await db - .select() - .from(membershipsTable) - .where( - and( - eq(membershipsTable.userEmail, email), - eq(membershipsTable.classroomId, doubt.classroomId!) - ) - ); + if (!doubt.classroomId) { + return errorResponse("Access denied", 403); + } + const [membership] = await db + .select() + .from(membershipsTable) + .where( + and( + eq(membershipsTable.userEmail, email!), + eq(membershipsTable.classroomId, doubt.classroomId) + ) + ); const isTeacher = membership ? canTeach(membership.role) : false; const isOwner = doubt.userEmail === email; diff --git a/src/components/AskDoubt.tsx b/src/components/AskDoubt.tsx index e88c9413..10244340 100644 --- a/src/components/AskDoubt.tsx +++ b/src/components/AskDoubt.tsx @@ -418,6 +418,9 @@ export default function AskDoubt({ defaultSubject = "", isOpen, onClose, onSucce className="w-full bg-slate-100 dark:bg-white/5 border border-slate-200 dark:border-white/10 rounded-2xl p-4 text-slate-900 dark:text-white focus:outline-none focus:border-blue-500/50 font-bold text-sm" required /> + {subjectWasEdited && !subject.trim() && ( +
Subject is required.
+ )} {suggestedSubject && (