diff --git a/frontend/src/pages/WeeklyActual.tsx b/frontend/src/pages/WeeklyActual.tsx index 89b3d216..5cc250b2 100644 --- a/frontend/src/pages/WeeklyActual.tsx +++ b/frontend/src/pages/WeeklyActual.tsx @@ -31,19 +31,22 @@ const MONTH_NAMES = ['January','February','March','April','May','June','July','A // ── Week navigation ──────────────────────────────────────────────────────── +function localDateStr(d: Date): string { + return `${d.getFullYear()}-${String(d.getMonth() + 1).padStart(2, '0')}-${String(d.getDate()).padStart(2, '0')}` +} + function defaultWeekEnding(): string { const d = new Date() const day = d.getDay() - // Go back to the most recent Saturday (day=6→today, else go back) const daysBack = day === 6 ? 0 : day + 1 d.setDate(d.getDate() - daysBack) - return d.toISOString().split('T')[0] + return localDateStr(d) } function shiftWeek(dateStr: string, weeks: number): string { const d = new Date(dateStr + 'T00:00:00') d.setDate(d.getDate() + weeks * 7) - return d.toISOString().split('T')[0] + return localDateStr(d) } // ── Chart colours ──────────────────────────────────────────────────────────