From 477e5fcdc36300784b05049e0a5043fa4ae55ad5 Mon Sep 17 00:00:00 2001 From: "gpt-engineer-app[bot]" <159125892+gpt-engineer-app[bot]@users.noreply.github.com> Date: Tue, 30 Jun 2026 20:45:23 +0000 Subject: [PATCH] Changes Co-authored-by: renee-png <262607627+renee-png@users.noreply.github.com> --- src/routes/_authenticated/admin.tsx | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/routes/_authenticated/admin.tsx b/src/routes/_authenticated/admin.tsx index 8170aff..6b413b9 100644 --- a/src/routes/_authenticated/admin.tsx +++ b/src/routes/_authenticated/admin.tsx @@ -100,7 +100,13 @@ function ClassesTab() { const { data: classes } = useQuery({ queryKey: ["admin-classes"], - queryFn: async () => (await supabase.from("classes").select("*, profiles!classes_teacher_id_fkey(full_name)").order("name")).data ?? [], + queryFn: async () => { + const { data } = await supabase.from("classes").select("*").order("name"); + const tids = Array.from(new Set((data ?? []).map((c) => c.teacher_id).filter(Boolean))) as string[]; + const { data: profs } = tids.length ? await supabase.from("profiles").select("id, full_name").in("id", tids) : { data: [] }; + const map = Object.fromEntries((profs ?? []).map((p) => [p.id, p.full_name])); + return (data ?? []).map((c) => ({ ...c, teacher_name: c.teacher_id ? map[c.teacher_id] : null })); + }, }); const { data: teachers } = useQuery({ queryKey: ["teachers"],