|
@@ -6,10 +6,15 @@ import { useSearchParams } from "next/navigation";
|
|
|
import { Target, ShieldCheck, Cpu, Code2, User } from "lucide-react";
|
|
import { Target, ShieldCheck, Cpu, Code2, User } from "lucide-react";
|
|
|
import { metricsData } from "@/components/metricsData";
|
|
import { metricsData } from "@/components/metricsData";
|
|
|
import { getMockStudentById } from "@/lib/mockApi";
|
|
import { getMockStudentById } from "@/lib/mockApi";
|
|
|
|
|
+import { useAuth } from "@/components/AuthProvider";
|
|
|
|
|
|
|
|
function AnalysisDashboardContent() {
|
|
function AnalysisDashboardContent() {
|
|
|
const searchParams = useSearchParams();
|
|
const searchParams = useSearchParams();
|
|
|
- const studentId = searchParams.get("student");
|
|
|
|
|
|
|
+ const { user } = useAuth();
|
|
|
|
|
+
|
|
|
|
|
+ // If there's a ?student= param in the URL (from Teacher Dashboard drill-down), use it.
|
|
|
|
|
+ // Otherwise, if we are logged in as a student, use our own ID.
|
|
|
|
|
+ const studentId = searchParams.get("student") || (user?.role === 'stu' ? user.id : null);
|
|
|
const student = studentId ? getMockStudentById(studentId) : null;
|
|
const student = studentId ? getMockStudentById(studentId) : null;
|
|
|
|
|
|
|
|
// Helper function to colorize cells like a thermal heatmap based on parsed average score
|
|
// Helper function to colorize cells like a thermal heatmap based on parsed average score
|