Aktueller Stand
This commit is contained in:
@@ -7,9 +7,25 @@ export async function requireSession() {
|
||||
if (!session?.user?.email) {
|
||||
return { session: null, response: NextResponse.json({ error: "Unauthorized" }, { status: 401 }) };
|
||||
}
|
||||
if (session.user.status && session.user.status !== "ACTIVE") {
|
||||
return {
|
||||
session: null,
|
||||
response: NextResponse.json({ error: "Account nicht freigeschaltet." }, { status: 403 })
|
||||
};
|
||||
}
|
||||
if (session.user.emailVerified === false) {
|
||||
return {
|
||||
session: null,
|
||||
response: NextResponse.json({ error: "E-Mail nicht verifiziert." }, { status: 403 })
|
||||
};
|
||||
}
|
||||
return { session, response: null };
|
||||
}
|
||||
|
||||
export function isAdminSession(session: { user?: { role?: string } } | null) {
|
||||
return session?.user?.role === "ADMIN";
|
||||
return session?.user?.role === "ADMIN" || session?.user?.role === "SUPERADMIN";
|
||||
}
|
||||
|
||||
export function isSuperAdminSession(session: { user?: { role?: string } } | null) {
|
||||
return session?.user?.role === "SUPERADMIN";
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user