Reapply "Add missing admin action files and navigation links"

This reverts commit 4d515bc400.
This commit is contained in:
Simo committed 2026-07-11 20:52:56 +02:00
1 parent 96ed768f14
commit 5b4228261a
338 files changed
+28143 -5948

No files matched your search

+7 -26
View File
@@ -27,8 +27,7 @@ export default async function MessagesPage() {
// offline messages they've received, and the avatar-imager base URL.
let requests: { id: number; userFromId: number }[] = [];
let messages: { id: number; userFromId: number; message: string; sendedOn: number }[] = [];
let imagerBase =
"https://www.habbo.com/habbo-imaging/avatarimage";
let imagerBase = "https://www.habbo.com/habbo-imaging/avatarimage";
try {
const [reqRows, msgRows, base] = await Promise.all([
@@ -44,10 +43,7 @@ export default async function MessagesPage() {
orderBy: { sendedOn: "desc" },
take: 50,
}),
siteSettings.get(
"habbo_imaging_url",
"https://www.habbo.com/habbo-imaging/avatarimage",
),
siteSettings.get("habbo_imaging_url", "https://www.habbo.com/habbo-imaging/avatarimage"),
]);
requests = reqRows;
messages = msgRows;
@@ -59,16 +55,10 @@ export default async function MessagesPage() {
// Resolve usernames/looks for every counterparty referenced above.
const otherIds = Array.from(
new Set([
...requests.map((r) => r.userFromId),
...messages.map((m) => m.userFromId),
]),
new Set([...requests.map((r) => r.userFromId), ...messages.map((m) => m.userFromId)]),
).filter((id) => id && id > 0);
let userById = new Map<
number,
{ id: number; username: string; look: string }
>();
let userById = new Map<number, { id: number; username: string; look: string }>();
if (otherIds.length > 0) {
try {
const users = await prisma.user.findMany({
@@ -83,11 +73,7 @@ export default async function MessagesPage() {
return (
<main style={{ display: "grid", gap: "1.5rem" }}>
<ContentCard
icon="✉️"
title={t("title")}
subtitle={t("subtitle")}
/>
<ContentCard icon="✉️" title={t("title")} subtitle={t("subtitle")} />
{/* ── Pending friend requests ───────────────────────────── */}
<ContentCard
@@ -156,9 +142,7 @@ export default async function MessagesPage() {
icon="💬"
title={t("offlineTitle")}
subtitle={
messages.length === 0
? t("offlineEmptySubtitle")
: t("offlineSubtitle", { count: messages.length })
messages.length === 0 ? t("offlineEmptySubtitle") : t("offlineSubtitle", { count: messages.length })
}
padded={messages.length === 0}
>
@@ -188,10 +172,7 @@ export default async function MessagesPage() {
height={50}
/>
<div style={{ minWidth: 0, flex: 1 }}>
<p
className="muted"
style={{ marginTop: 0, marginBottom: "0.35rem" }}
>
<p className="muted" style={{ marginTop: 0, marginBottom: "0.35rem" }}>
{from ? (
<Link href={`/u/${from.username}`}>{from.username}</Link>
) : (