import { getPublicUser, prisma } from "@repo/db"; import { TriangleAlert } from "lucide-react"; import { PenaltyCountdown } from "../(app)/_components/PenaltyCountdown"; import { getServerSession } from "api/auth/[...nextauth]/auth"; export const Penalty = async () => { const session = await getServerSession(); const openTimeban = await prisma.penalty.findMany({ where: { userId: session?.user.id, until: { gte: new Date(), }, suspended: false, type: { in: ["TIME_BAN"] }, }, include: { CreatedUser: true, }, }); const openBans = await prisma.penalty.findMany({ where: { userId: session?.user.id, suspended: false, type: { in: ["BAN"] }, }, include: { CreatedUser: true, }, }); return (
{openTimeban[0] && openTimeban[0].type === "TIME_BAN" && (

Aktive Strafe - {" "} verbleibend

Du hast eine aktive Strafe und kannst dich deshalb nicht mit dem Netzwerk verbinden.

Grund: {openTimeban[0].reason}

{openTimeban[0].CreatedUser && (

Admin:{" "} {getPublicUser(openTimeban[0].CreatedUser).fullName}

)}
)} {session?.user.isBanned && (

Du wurdest permanent von Virtual Air Rescue ausgeschlossen.

Dein Fehlverhalten war so schwerwiegend, dass du dauerhaft von VirtualAirRescue ausgeschlossen wurdest. Du kannst dich nicht mehr mit dem Netzwerk verbinden.

{openBans[0] && ( <>

Grund: {openBans[0].reason || "Keine Begründung gefunden"}

{openBans[0].CreatedUser && (

Admin:{" "} {getPublicUser(openBans[0].CreatedUser).fullName}

)} )}
)}
); };