Fixed Wrong IP being loged

This commit is contained in:
PxlLoewe
2026-02-01 11:45:18 +01:00
parent cc29ac3e14
commit 824d2e40a9
7 changed files with 135 additions and 13 deletions

View File

@@ -0,0 +1,91 @@
"use client";
import { LogsIcon } from "lucide-react";
import { PaginatedTable } from "../../../_components/PaginatedTable";
import Link from "next/link";
import { ColumnDef } from "@tanstack/react-table";
import { Log, Prisma, User } from "@repo/db";
export default () => {
return (
<>
<PaginatedTable
stickyHeaders
initialOrderBy={[{ id: "timestamp", desc: true }]}
prismaModel="log"
showSearch
include={{
User: true,
}}
getFilter={(searchTerm) =>
({
OR: [
{
User: {
firstname: { contains: searchTerm, mode: "insensitive" },
lastname: { contains: searchTerm, mode: "insensitive" },
publicId: { contains: searchTerm, mode: "insensitive" },
},
},
{ deviceId: { contains: searchTerm, mode: "insensitive" } },
{ ip: { contains: searchTerm, mode: "insensitive" } },
],
}) as Prisma.LogWhereInput
}
columns={
[
{
header: "ID",
accessorKey: "id",
},
{
header: "Aktion",
accessorKey: "action",
cell: ({ row }) => {
const action = row.original.type;
if (action !== "PROFILE_CHANGE") {
return <span className="text-blue-500">{action}</span>;
} else {
return (
<span className="text-yellow-500">{`${row.original.field} von "${row.original.oldValue}" zu "${row.original.newValue}"`}</span>
);
}
},
},
{
header: "IP",
accessorKey: "ip",
},
{
header: "Browser-ID",
accessorKey: "deviceId",
},
{
header: "Zeitstempel",
accessorKey: "timestamp",
cell: (info) => new Date(info.getValue<string>()).toLocaleString("de-DE"),
},
{
header: "Benutzer",
accessorKey: "userId",
cell: ({ row }) => {
return (
<Link href={`/admin/user/${row.original.userId}`} className={"link"}>
{row.original.User
? `${row.original.User.firstname} ${row.original.User.lastname} - ${row.original.User.publicId}`
: "Unbekannt"}
</Link>
);
},
},
] as ColumnDef<Log & { User: User }>[]
}
leftOfSearch={
<span className="flex items-center gap-2">
<LogsIcon className="h-5 w-5" /> Account Log
</span>
}
/>
</>
);
};