feat: add admin role management with user authentication checks and update sidebar for admin access

This commit is contained in:
Julien Froidefond
2025-10-16 22:39:04 +02:00
parent 83f523c11a
commit 9899789fce
25 changed files with 1636 additions and 6 deletions

24
src/app/admin/page.tsx Normal file
View File

@@ -0,0 +1,24 @@
import { AdminService } from "@/lib/services/admin.service";
import { redirect } from "next/navigation";
import { isAdmin } from "@/lib/auth-utils";
import { AdminContent } from "@/components/admin/AdminContent";
export default async function AdminPage() {
try {
const hasAdminAccess = await isAdmin();
if (!hasAdminAccess) {
redirect("/");
}
const [users, stats] = await Promise.all([
AdminService.getAllUsers(),
AdminService.getUserStats(),
]);
return <AdminContent initialUsers={users} initialStats={stats} />;
} catch (error) {
console.error("Erreur lors du chargement de la page admin:", error);
redirect("/");
}
}