From 266ff87fd84a3d0abc36570413ea4906fc0d06c2 Mon Sep 17 00:00:00 2001 From: PxlLoewe <72106766+PxlLoewe@users.noreply.github.com> Date: Tue, 29 Jul 2025 15:54:09 -0700 Subject: [PATCH] =?UTF-8?q?Penalty=20Nachricht=20im=20Admin=20form,=20abge?= =?UTF-8?q?laufen=20f=C3=BCr=20Timebans=20in=20tabelle=20werden=20Farblich?= =?UTF-8?q?=20dargestellt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../socket-events/connect-dispatch.ts | 3 +-- .../socket-events/connect-pilot.ts | 3 +-- apps/hub/app/(app)/admin/penalty/columns.tsx | 13 +++++++--- apps/hub/app/(app)/admin/penalty/page.tsx | 6 +++++ apps/hub/app/(app)/admin/user/[id]/page.tsx | 25 +++++++++++-------- packages/shared-components/helper/index.ts | 1 + .../shared-components/helper/penaltys.ts | 0 7 files changed, 32 insertions(+), 19 deletions(-) rename apps/dispatch-server/helper.ts => packages/shared-components/helper/penaltys.ts (100%) diff --git a/apps/dispatch-server/socket-events/connect-dispatch.ts b/apps/dispatch-server/socket-events/connect-dispatch.ts index 1eabd15a..3ebf74c8 100644 --- a/apps/dispatch-server/socket-events/connect-dispatch.ts +++ b/apps/dispatch-server/socket-events/connect-dispatch.ts @@ -1,9 +1,8 @@ import { getPublicUser, prisma, User } from "@repo/db"; import { addRolesToMember, removeRolesFromMember, renameMember } from "modules/discord"; -import { getNextDateWithTime } from "@repo/shared-components"; +import { getNextDateWithTime, getUserPenaltys } from "@repo/shared-components"; import { DISCORD_ROLES } from "@repo/db"; import { Server, Socket } from "socket.io"; -import { getUserPenaltys } from "helper"; export const handleConnectDispatch = (socket: Socket, io: Server) => diff --git a/apps/dispatch-server/socket-events/connect-pilot.ts b/apps/dispatch-server/socket-events/connect-pilot.ts index 94d18eb6..aaa936cf 100644 --- a/apps/dispatch-server/socket-events/connect-pilot.ts +++ b/apps/dispatch-server/socket-events/connect-pilot.ts @@ -1,9 +1,8 @@ import { getPublicUser, prisma, User } from "@repo/db"; import { addRolesToMember, removeRolesFromMember, renameMember } from "modules/discord"; -import { getNextDateWithTime } from "@repo/shared-components"; import { DISCORD_ROLES } from "@repo/db"; import { Server, Socket } from "socket.io"; -import { getUserPenaltys } from "helper"; +import { getUserPenaltys } from "@repo/shared-components"; export const handleConnectPilot = (socket: Socket, io: Server) => diff --git a/apps/hub/app/(app)/admin/penalty/columns.tsx b/apps/hub/app/(app)/admin/penalty/columns.tsx index f36a94c8..4b017331 100644 --- a/apps/hub/app/(app)/admin/penalty/columns.tsx +++ b/apps/hub/app/(app)/admin/penalty/columns.tsx @@ -30,12 +30,17 @@ export const penaltyColumns: ColumnDef - Zeit Sperre ({length}) {row.original.suspended && "(ausgesetzt)"} + Zeit Sperre ({length}) {row.original.suspended && "(ausgesetzt)"}{" "} + {isExpired && !row.original.suspended && "(abgelaufen)"} ); } @@ -78,14 +83,14 @@ export const penaltyColumns: ColumnDef {report && ( diff --git a/apps/hub/app/(app)/admin/penalty/page.tsx b/apps/hub/app/(app)/admin/penalty/page.tsx index 95d678a4..5b9b6e3b 100644 --- a/apps/hub/app/(app)/admin/penalty/page.tsx +++ b/apps/hub/app/(app)/admin/penalty/page.tsx @@ -10,6 +10,12 @@ export default function ReportPage() { CreatedUser: true, Report: true, }} + initialOrderBy={[ + { + id: "timestamp", + desc: true, + }, + ]} columns={penaltyColumns} /> ); diff --git a/apps/hub/app/(app)/admin/user/[id]/page.tsx b/apps/hub/app/(app)/admin/user/[id]/page.tsx index f1d3f022..1c74253d 100644 --- a/apps/hub/app/(app)/admin/user/[id]/page.tsx +++ b/apps/hub/app/(app)/admin/user/[id]/page.tsx @@ -8,10 +8,10 @@ import { UserReports, } from "./_components/forms"; import { Error } from "../../../../_components/Error"; +import { getUserPenaltys } from "@repo/shared-components"; export default async function Page({ params }: { params: Promise<{ id: string }> }) { const { id } = await params; - const user = await prisma.user.findUnique({ where: { id: id, @@ -20,6 +20,7 @@ export default async function Page({ params }: { params: Promise<{ id: string }> discordAccounts: true, }, }); + if (!user) return ; const dispoSessions = await prisma.connectedDispatcher.findMany({ where: { @@ -97,41 +98,43 @@ export default async function Page({ params }: { params: Promise<{ id: string }> open: totalReportsOpen, total60Days: totalReports60Days, }; - if (!user) return ; + const { openBans, openTimeban } = await getUserPenaltys(user?.id); return (
-
-

- +

+

+ {user?.firstname} {user?.lastname} #{user?.publicId}

{new Date(user.createdAt).toLocaleString("de-DE")}

-
+
-
+
-
+
-
+
-
+
diff --git a/packages/shared-components/helper/index.ts b/packages/shared-components/helper/index.ts index 072e7e0b..459d1021 100644 --- a/packages/shared-components/helper/index.ts +++ b/packages/shared-components/helper/index.ts @@ -4,3 +4,4 @@ export * from "./dates"; export * from "./simulatorConnected"; export * from "./useDebounce"; export * from "./useTimeout"; +export * from "./penaltys"; diff --git a/apps/dispatch-server/helper.ts b/packages/shared-components/helper/penaltys.ts similarity index 100% rename from apps/dispatch-server/helper.ts rename to packages/shared-components/helper/penaltys.ts