Aktueller Stand

This commit is contained in:
2026-01-15 16:24:09 +01:00
parent 5d2630a02f
commit 46eae2a2a9
70 changed files with 7866 additions and 447 deletions

View File

@@ -1,16 +1,22 @@
import { getServerSession } from "next-auth";
import AdminPanel from "../../components/AdminPanel";
import AdminSystemSettings from "../../components/AdminSystemSettings";
import { authOptions } from "../../lib/auth";
export default async function AdminPage() {
const session = await getServerSession(authOptions);
if (session?.user?.role !== "ADMIN") {
if (session?.user?.role !== "ADMIN" && session?.user?.role !== "SUPERADMIN") {
return (
<div className="rounded border border-dashed border-slate-300 bg-white p-8 text-center">
<p className="text-slate-700">Nur fuer Admins.</p>
<div className="card-muted text-center">
<p className="text-slate-700">Nur für Admins.</p>
</div>
);
}
return <AdminPanel />;
return (
<div className="space-y-6">
<AdminPanel />
{session?.user?.role === "SUPERADMIN" && <AdminSystemSettings />}
</div>
);
}

View File

@@ -0,0 +1,5 @@
import { redirect } from "next/navigation";
export default async function AdminSettingsPage() {
redirect("/admin");
}

16
app/admin/users/page.tsx Normal file
View File

@@ -0,0 +1,16 @@
import { getServerSession } from "next-auth";
import AdminUserApprovals from "../../../components/AdminUserApprovals";
import { authOptions } from "../../../lib/auth";
export default async function AdminUsersPage() {
const session = await getServerSession(authOptions);
if (session?.user?.role !== "ADMIN" && session?.user?.role !== "SUPERADMIN") {
return (
<div className="card-muted text-center">
<p className="text-slate-700">Nur für Admins.</p>
</div>
);
}
return <AdminUserApprovals role={session?.user?.role ?? null} />;
}