elpatron
a185bbaf27
feat: add local photo zip download for logged-in users and swipe navigation to maximized gallery
2026-06-07 21:42:00 +02:00
elpatron
864d45714c
feat(settings): add share button next to copy button on mobile devices for public share link
2026-06-07 21:19:57 +02:00
elpatron
74ff8eb16b
style: fix journal entry action buttons alignment on mobile
2026-06-07 14:27:44 +02:00
elpatron
81d3e3b777
feat: show travel day count badge on logbook dashboard
2026-06-07 14:22:17 +02:00
elpatron
d948325a45
feat: add French and Spanish locales and update language selector
2026-06-07 13:44:27 +02:00
elpatron
6593b320ee
feat(i18n): integrate LanguageDropdown in LogbookDashboard
2026-06-07 13:26:29 +02:00
elpatron
4dfe2cea4e
feat(i18n): replace language cycle buttons with flag dropdown selector using inline SVGs
2026-06-07 12:59:40 +02:00
elpatron
594c65d1a5
feat: make photo capture attachments section collapsible by default
2026-06-07 09:00:14 +02:00
elpatron
4fd7f3c6cf
feat(journal): wrap Crew an diesem Reisetag card inside a collapsible accordion defaulting to collapsed
2026-06-06 21:59:25 +02:00
elpatron
65d2215a35
Render maximized photo overlay via React Portal to resolve CSS stacking context issue
2026-06-06 21:33:47 +02:00
elpatron
d2961b050a
Rearrange journal cards layout according to user request order
2026-06-06 21:30:00 +02:00
elpatron
6943fd2dc4
Implement column selector customizer popover for chronological events logbook
2026-06-06 21:17:50 +02:00
elpatron
9d2a19dbf8
feat: group freshwater, fuel, and greywater cards in collapsible Tanks section
2026-06-06 21:07:51 +02:00
elpatron
e3cd89be5d
feat: separate chronological events list and add event form into separate cards
2026-06-06 21:04:25 +02:00
elpatron
a86da72b04
feat: implement collapsible accordions for event protocol list and form
2026-06-06 21:02:35 +02:00
elpatron
7d6f381f55
feat: implement responsive event cards for mobile viewports
2026-06-06 20:58:04 +02:00
elpatron
878be33b7c
feat: add fullscreen photo viewer overlay on click & resolve appearance compat warnings
2026-06-06 20:40:13 +02:00
elpatron
318f5e65da
feat: add camera/gallery choice for photos & sync AI profile pref to server
2026-06-06 20:37:21 +02:00
elpatron
3eaf59e2b3
Implement AI consent gating, user preference settings, and Ko-fi hint
2026-06-06 12:08:46 +02:00
elpatron
b1e17be7fd
feat(analytics): add Plausible custom event VOICE_MEMO_TRANSCRIBED with status and mode properties
2026-06-06 11:51:07 +02:00
elpatron
a4b3515711
feat: implement voice memo transcription with local parakeet container and fallback timeouts
2026-06-06 11:01:15 +02:00
elpatron
6c83cd7d36
feat: differentiate weather fetch errors by cause
2026-06-05 19:52:33 +02:00
elpatron
9089e1c6f9
feat: resolve user profile photos in chronological event log
2026-06-05 19:46:18 +02:00
elpatron
968e81f4fb
feat(auth): Session-Wiederherstellung nach Reload ohne vollen Login
...
Nach gültigem Server-Cookie wird automatisch Passkey oder PIN zum Entsperren angeboten, statt die komplette Anmelde-Maske zu zeigen.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-05 11:42:06 +02:00
elpatron
43cf589613
feat: add in-app admin navigation for whitelisted users
...
Detect admin access after login and expose a header button that opens /admin via client-side routing so the session stays unlocked when returning to the app.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-05 10:03:46 +02:00
elpatron
935c263648
style: link KnorrLabs to dashy with compass icon badge
2026-06-04 19:29:59 +02:00
elpatron
4d3b7210b3
style: replace name with email address in footer mail link badge
2026-06-04 19:27:00 +02:00
elpatron
2fcc741f5e
style: style email link in footer as icon badge similar to Ko-Fi badge
2026-06-04 19:22:43 +02:00
elpatron
16944c1a26
chore: update contact email in footer to moin@kapteins-daagbok.eu
2026-06-04 18:26:02 +02:00
elpatron
73e7613a1b
feat(logbook): attribute log events to creator and show in exports
2026-06-03 19:39:15 +02:00
elpatron
f189317dfc
chore: remove visual debug logs panel from voice recording modal
2026-06-03 19:11:25 +02:00
elpatron
2de0636608
fix: call load() to force mobile browsers to fetch blob URL metadata and fix player duration
2026-06-03 18:56:32 +02:00
elpatron
6600ceafce
debug: add verbose console logging and on-screen logs area to LiveVoiceCapture
2026-06-03 18:51:08 +02:00
elpatron
4c04086d63
fix: solve audio recording on iOS/Safari and fix Dockerfile health check
2026-06-03 18:44:51 +02:00
elpatron
72c956162c
fix: resolve 0-second duration issue on WebM voice recordings in Chrome/Android
2026-06-03 18:33:35 +02:00
elpatron
6447e95d7d
fix: defer stopping media stream tracks until media recorder finishes stopping
2026-06-03 18:22:30 +02:00
elpatron
4cf70a3431
style: increase footer and Ko-Fi badge font-size
2026-06-03 18:14:07 +02:00
elpatron
bff00cf0a3
fix: camera error modal rendering and voice memo player box-sizing
2026-06-03 18:10:20 +02:00
elpatron
3cab735754
refactor: replace parseFloat with parseAppDecimal and formatAppDecimal for improved number handling
...
Updated various components to utilize parseAppDecimal and formatAppDecimal for consistent decimal parsing and formatting. This change enhances the handling of numeric inputs across the application, ensuring better accuracy and user experience in forms and displays.
2026-06-03 18:07:22 +02:00
elpatron
24160b6c5d
feat(gps): klare Fehlerhinweise, Empfangsqualität und Live-Log-Freigabe
...
Nutzer sehen spezifische Meldungen bei GPS-Problemen, eine Schätzung des
Empfangs aus der Browser-Genauigkeit und beim ersten Live-Log-Besuch nur
dann einen Freigabe-Hinweis, wenn die Standortberechtigung noch offen ist.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-03 17:53:58 +02:00
elpatron
1326045b25
fix(live-log): Fehlermeldung wenn keine Systemkamera vorhanden ist
...
Prüft videoinput-Geräte beim Öffnen des Foto-Modals und zeigt eine
klare Meldung statt leerem Kamera-UI; getUserMedia-Fehler differenziert.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-03 17:44:11 +02:00
elpatron
e014e997de
refactor(live-log): Position-Terminologie und Modal-UX vereinheitlichen
...
Fix/Standort heißen überall Position (__live:position, Legacy __live:fix).
Nachfüll-Buttons + Diesel/+ Wasser, Abbruch statt Nein in Live-Modals.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-03 17:42:08 +02:00
elpatron
1bc449687d
style: add spacing around voice memo player controls
...
Widen native audio controls and separate remarks column from event actions.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-03 17:31:33 +02:00
elpatron
9f76c200b0
style: highlight delete actions and align event row buttons
...
Add btn-icon danger styling, strengthen btn-delete and photo delete, and fix events table action layout.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-03 17:27:46 +02:00
elpatron
ac627a022f
fix: ensure only one travel day per calendar date
...
Serialize Live-log day creation, prune empty duplicates, and use local dates for "today".
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-03 17:24:51 +02:00
elpatron
9ae24aa6fb
fix: allow microphone access for voice memos in PWA
...
Permissions-Policy blocked getUserMedia; allow microphone on same origin like camera.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-03 17:18:49 +02:00
elpatron
7bc3c25ba4
feat: add discreet Ko-fi support badge in app footer
...
Let users support project development and running costs via ko-fi.com/kapteinsdaagbok, with i18n tooltips and Plausible tracking.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-03 15:33:56 +02:00
elpatron
89f0f52841
Disable backup export until passphrases match.
...
The download button stays inactive until both fields agree and meet
the minimum length, so users cannot start export with a mismatch.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-03 15:18:03 +02:00
elpatron
6f28ea0b16
Replace logbook backup v1 JSON with v2 ZIP archives.
...
ZIP .daagbok files use a compact manifest and binary KDAB blobs so large
photo, voice, and GPS payloads no longer inflate in a single JSON file.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-03 15:13:51 +02:00
elpatron
975c7a2e40
Add voice memos to live journal and event log.
...
Record short E2E-encrypted audio attachments from the live log, link them to events via __live:voice markers, and play them back in the stream and chronological event table.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-03 14:52:12 +02:00