Files
var-monorepo/apps/hub/app/(app)/admin/event/layout.tsx

19 lines
566 B
TypeScript

import { Error } from "_components/Error";
import { getServerSession } from "api/auth/[...nextauth]/auth";
const AdminEventLayout = async ({ children }: { children: React.ReactNode }) => {
const session = await getServerSession();
if (!session) return <Error title="Nicht eingeloggt" statusCode={401} />;
const user = session.user;
if (!user?.permissions.includes("ADMIN_EVENT"))
return <Error title="Keine Berechtigung" statusCode={403} />;
return <>{children}</>;
};
AdminEventLayout.displayName = "AdminEventLayout";
export default AdminEventLayout;