import prisma from "@/lib/prisma";
import { getSessionUser } from "@/lib/auth";
import { PageHeader } from "@/components/layout/PageHeader";
import StudentQuizzesClient from "./StudentQuizzesClient";

export default async function StudentQuizzesPage() {
  const user = await getSessionUser();
  if (!user || !user.classId || !user.studentId) return null;

  const quizzes = await prisma.quiz.findMany({
    where: {
      teacherSubject: { classId: user.classId },
      isPublished: true,
    },
    include: {
      teacherSubject: {
        include: {
          subject: true,
          teacher: true,
        },
      },
      questions: true,
      attempts: {
        where: { studentId: user.studentId },
      },
    },
    orderBy: { startTime: "desc" },
  });

  return (
    <div className="space-y-6">
      <PageHeader
        title="Kuis & Ujian Online (CBT)"
        description="Asesmen formatif dan sumatif digital SMA Negeri 3 OKU."
        breadcrumbs={[
          { label: "Dashboard", href: "/student/dashboard" },
          { label: "Kuis & Ujian (CBT)" },
        ]}
      />

      <StudentQuizzesClient initialQuizzes={quizzes} />
    </div>
  );
}
