From 753180acf15e9b16290e5ae9d456e92f8e498781 Mon Sep 17 00:00:00 2001 From: Alexander Bocken Date: Tue, 7 Apr 2026 20:14:20 +0200 Subject: [PATCH] fix: period end date set to yesterday and show fertile range during ongoing period Clicking "Period Ended" now records yesterday as the end date, since you only know the period ended the day after. Also added the missing fertile date range to the ongoing-period status view. --- package.json | 2 +- src/lib/components/fitness/PeriodTracker.svelte | 6 +++++- src/lib/js/fitnessI18n.ts | 2 +- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index b2fc59b..e352094 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "homepage", - "version": "1.5.0", + "version": "1.5.1", "private": true, "type": "module", "scripts": { diff --git a/src/lib/components/fitness/PeriodTracker.svelte b/src/lib/components/fitness/PeriodTracker.svelte index f2b8a0b..1e3aa08 100644 --- a/src/lib/components/fitness/PeriodTracker.svelte +++ b/src/lib/components/fitness/PeriodTracker.svelte @@ -444,7 +444,7 @@ const res = await fetch(`/api/fitness/period/${ongoing._id}`, { method: 'PUT', headers: { 'Content-Type': 'application/json' }, - body: JSON.stringify({ endDate: new Date().toISOString() }) + body: JSON.stringify({ endDate: new Date(Date.now() - 86400000).toISOString() }) }); if (res.ok) { const { entry } = await res.json(); @@ -606,6 +606,10 @@ {relativeDate(nextCycle.fertileEnd)} {formatDate(nextCycle.fertileEnd)} +
+ {t('fertile', lang)} + {formatDate(nextCycle.fertileStart)} — {formatDate(nextCycle.fertileEnd)} +
{/if} diff --git a/src/lib/js/fitnessI18n.ts b/src/lib/js/fitnessI18n.ts index cf601e6..bfd2700 100644 --- a/src/lib/js/fitnessI18n.ts +++ b/src/lib/js/fitnessI18n.ts @@ -303,7 +303,7 @@ const translations: Translations = { current_period: { en: 'Current Period', de: 'Aktuelle Periode' }, no_period_data: { en: 'No period data yet. Log your first period to start tracking.', de: 'Noch keine Periodendaten. Erfasse deine erste Periode.' }, start_period: { en: 'Start Period', de: 'Periode starten' }, - end_period: { en: 'End Period', de: 'Periode beenden' }, + end_period: { en: 'Period Ended', de: 'Periode vorbei' }, period_day: { en: 'Day', de: 'Tag' }, predicted_end: { en: 'Predicted end', de: 'Voraussichtliches Ende' }, next_period: { en: 'Next period', de: 'Nächste Periode' },