feat: add admin role management with user authentication checks and update sidebar for admin access
This commit is contained in:
24
src/app/admin/page.tsx
Normal file
24
src/app/admin/page.tsx
Normal 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("/");
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user