diff --git a/apps/web/src/lib/opening.ts b/apps/web/src/lib/opening.ts index 55efe73..88367b0 100644 --- a/apps/web/src/lib/opening.ts +++ b/apps/web/src/lib/opening.ts @@ -2,4 +2,4 @@ * Single source-of-truth for when registration opens. * Change this date to reschedule — all gating logic imports from here. */ -export const REGISTRATION_OPENS_AT = new Date("2026-03-16T19:00:00+01:00"); +export const REGISTRATION_OPENS_AT = new Date("2026-03-11T10:30:00+01:00"); diff --git a/apps/web/src/routes/login.tsx b/apps/web/src/routes/login.tsx index f89b675..b37b2fd 100644 --- a/apps/web/src/routes/login.tsx +++ b/apps/web/src/routes/login.tsx @@ -329,9 +329,14 @@ function LoginPage() { onClick={() => setIsSignup(true)} className="cursor-not-allowed text-sm text-white/30" disabled - title="Registratie opent op 16 maart om 19:00" + title={`Registratie opent op ${REGISTRATION_OPENS_AT.toLocaleString("nl-BE", { day: "numeric", month: "long", hour: "2-digit", minute: "2-digit" })}`} > - Nog geen account? (opent 16 maart) + Nog geen account? (opent{" "} + {REGISTRATION_OPENS_AT.toLocaleString("nl-BE", { + day: "numeric", + month: "long", + })} + ) )} diff --git a/packages/api/src/email.ts b/packages/api/src/email.ts index 2e96546..b95b2ea 100644 --- a/packages/api/src/email.ts +++ b/packages/api/src/email.ts @@ -351,8 +351,8 @@ export async function sendCancellationEmail(params: { function reminderHtml(params: { firstName?: string | null }) { const greeting = params.firstName ? `Hoi ${params.firstName},` : "Hoi!"; - // Registration opens at 2026-03-16T19:00:00+01:00 - const openDateStr = "maandag 16 maart 2026 om 19:00"; + // Registration opens at 2026-03-11T10:30:00+01:00 + const openDateStr = "woensdag 11 maart 2026 om 10:30"; const registrationUrl = `${baseUrl}/#registration`; return ` diff --git a/packages/api/src/routers/index.ts b/packages/api/src/routers/index.ts index a672c26..a1bcbcb 100644 --- a/packages/api/src/routers/index.ts +++ b/packages/api/src/routers/index.ts @@ -18,7 +18,7 @@ import { generateQrSecret } from "../lib/drinkkaart-utils"; import { drinkkaartRouter } from "./drinkkaart"; // Registration opens at this date — reminders fire 1 hour before -const REGISTRATION_OPENS_AT = new Date("2026-03-10T17:00:00+01:00"); +const REGISTRATION_OPENS_AT = new Date("2026-03-11T10:30:00+01:00"); const REMINDER_WINDOW_START = new Date( REGISTRATION_OPENS_AT.getTime() - 60 * 60 * 1000, ); diff --git a/packages/infra/alchemy.run.ts b/packages/infra/alchemy.run.ts index 6611a3b..e2e4de3 100644 --- a/packages/infra/alchemy.run.ts +++ b/packages/infra/alchemy.run.ts @@ -35,7 +35,7 @@ export const web = await TanStackStart("web", { // Cron secret for protected scheduled endpoints CRON_SECRET: getEnvVar("CRON_SECRET"), }, - // Fire every hour so the reminder check can run at 18:00 on 2026-03-16 + // Fire every hour so the reminder check can run at 09:30 on 2026-03-11 crons: ["0 * * * *"], domains: ["kunstenkamp.be", "www.kunstenkamp.be"], });