diff --git a/CHANGELOG.md b/CHANGELOG.md index ca7375c..336e43d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,38 @@ All notable changes to this project are documented in this file. +## [1.121.2] - 2026-09-12 + +### Changed +- Die Spaltenaufteilung sich überlappender Termine im Tagesraster ist aus + `WeeklyView.tsx` in `src/lib/weekly/event-layout.ts` ausgelagert + (`layoutDaySegments`/`computeEventOverlapLayout`), mit eigenen Tests + abgesichert. Erster Schnitt der CodeScene-getriebenen Sanierung; der + Algorithmus selbst ist unverändert, kein sichtbares Verhalten geändert. + +## [1.121.1] - 2026-09-12 + +### Fixed +- **`/api/calendar/apple/sync` war ohne Anmeldung erreichbar** und hat beliebige + Apple-Zugangsdaten aus dem Request gegen Apple CalDAV geschickt. Die Instanz + liess sich damit als Relay zum Durchprobieren fremder Zugangsdaten + missbrauchen. Die Route verlangt jetzt dieselbe Session-Prüfung wie + `/api/calendar/apple/connect`. +- `AuthForm.tsx` schrieb E-Mail-Adresse und Passwort im Klartext in die + Browser-Konsole. Die Debug-Ausgaben sind entfernt. + +## [1.121.0] - 2026-09-12 + +### Fixed +- **Termine über Mitternacht verlängerten den Starttag**, statt am Folgetag + weiterzulaufen. Ein Termin von 22:00 bis 02:00 erschien bisher als ein + überlanger Block im Starttag; jetzt wird er an der Tagesgrenze geteilt: + 22:00–24:00 am Starttag, 00:00–02:00 am Folgetag — so, wie es Kalender-Apps + zeigen. Die Aufteilungsregel (`splitEventByDay` in + `src/lib/weekly/date-utils.ts`) ist mit Unit-Tests abgesichert. Klick, Drag + und Resize wirken weiterhin auf den ungeteilten Termin; Payloads und API + sind unverändert. + ## [1.120.1] - 2026-09-07 ### Fixed diff --git a/package.json b/package.json index b0feeb4..d641fc5 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "my-weekly-todo-list", - "version": "1.121.2", + "version": "1.121.3", "description": "A web-based weekly task management application that organizes to-dos and calendar events in a single, intuitive weekly view", "main": "index.js", "scripts": {