Alle 15 Minuten abgleichen, nachts alte Termine und abgelaufene WebAuthn-Herausforderungen entfernen. Ohne das Aufräumen bliebe der Terminspiegel für immer stehen. Der Riegel über globalThis ist nötig, weil Next im Entwicklungsbetrieb Module mehrfach lädt — sonst liefen nach ein paar Änderungen ein Dutzend Zeitpläne parallel. Im Demo-Modus starten gar keine Jobs: die Screenshot-Instanz soll sich nicht selbst verändern, während sie abfotografiert wird. Protokolliert werden nur Zahlen, nie Kontonamen oder Termininhalte. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
16 lines
529 B
TypeScript
16 lines
529 B
TypeScript
/**
|
|
* Wird von Next einmal beim Hochfahren des Servers ausgeführt.
|
|
*
|
|
* Nur in der Node-Laufzeit: im Edge-Umfeld gibt es weder Prisma noch
|
|
* node-cron. Der Demo-Modus startet bewusst keine Jobs — die
|
|
* Screenshot-Instanz soll sich nicht selbst verändern, während sie
|
|
* abfotografiert wird.
|
|
*/
|
|
export async function register(): Promise<void> {
|
|
if (process.env.NEXT_RUNTIME !== 'nodejs') return
|
|
if (process.env.DEMO_MODUS === 'true') return
|
|
|
|
const { jobsStarten } = await import('@/server/jobs')
|
|
jobsStarten()
|
|
}
|