feat(admin): Schwelle fuer den Stillstand einstellbar

Eigener Abschnitt mit der Schwelle von 14 Tagen bis zu einem Jahr, dem
Zeitpunkt der letzten Pruefung und der Zahl der Empfaenger. Steht die auf
null, sagt der Abschnitt das und verweist auf "Mein Konto".

Eine Aenderung der Schwelle setzt lastStaleCheckAt zurueck, damit sie beim
naechsten Tick greift und nicht erst in 24 Stunden.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-07-26 10:55:15 +02:00
co-authored by Claude Opus 5
parent 4d1389c3a8
commit 18ed4de9f9
3 changed files with 141 additions and 1 deletions
+9 -1
View File
@@ -19,7 +19,7 @@ export async function generateMetadata(): Promise<Metadata> {
export default async function AdminPage() {
const admin = await requireAdminPage();
const [settings, users, eligible] = await Promise.all([
const [settings, users, eligible, staleListeners] = await Promise.all([
getAppSettings(),
prisma.user.findMany({
select: userSafeSelect,
@@ -36,6 +36,9 @@ export default async function AdminPage() {
],
},
}),
prisma.notificationTarget.count({
where: { isActive: true, events: { has: "PROJECT_STALE" } },
}),
]);
const data: AdminData = {
@@ -54,6 +57,11 @@ export default async function AdminPage() {
lastReport: (settings.lastAutoSyncReport as AutoSyncReport | null) ?? null,
eligible,
},
stale: {
afterDays: settings.staleAfterDays,
lastCheckAt: settings.lastStaleCheckAt,
listeners: staleListeners,
},
};
return (