diff --git a/README.md b/README.md index f0c87f7..915f783 100644 --- a/README.md +++ b/README.md @@ -23,7 +23,7 @@ Mobile Progressive Web App für die Baustellen-Doku — Foto-Upload, Sprach- und **Foto-Upload** - ✅ Live-Kamera-Modal (getUserMedia): bleibt für Serien-Aufnahmen offen — Auslöser + Filmstreifen mit Upload-Status je Foto (💾 gesichert → ⏳ lädt hoch → ✓ fertig), Front-/Rückkamera-Umschaltung, Fehlschuss löschbar - ✅ **Volle Kameraauflösung**: ausgelöst wird über `ImageCapture.takePhoto()` (native JPEG der Kamera inkl. EXIF) — ein Standbild aus dem Video-Stream hat nur Stream-Auflösung und ist nur noch die Rückfallebene (iOS/Safari, ältere Browser) -- ✅ Alternativ Aufnahme aus der Galerie +- ✅ Alternativ Aufnahme aus der Galerie (Mehrfachauswahl: alle Dateien werden sofort nach der Auswahl eingelesen, erst dann hochgeladen, weil Android die Galerie-Dateien nur kurz lesbar hält, siehe ROADMAP Punkt 7) - ✅ **Fotoqualität im Admin einstellbar** (Bericht-Modul → Fotoqualität, `api/config.php`): Vorgabe ist **1:1, gar nicht verkleinern**; optional längste Seite + JPEG-Qualität. Gesichert wird immer zuerst das Original, die kleine Fassung ersetzt es danach — hängt das Verkleinern (Display aus), bleibt das Original - ✅ **Wake Lock** während Foto-Serie und Upload: schaltet sich das Display ab, friert der Browser laufende Uploads und das Verkleinern ein - ✅ **Persist-First / Datenverlust-Schutz**: jedes Foto wird beim Auslösen ZUERST in IndexedDB gesichert, Upload erst danach; Queue-Item wird nur nach bestätigtem Upload (HTTP 2xx mit gültigem `relpath`) gelöscht — überlebt fehlendes/schwaches Netz, hängende Uploads (45s-Timeout) und App-Kill. Erkennt 2xx-HTML (abgelaufene Session/Proxy-Loginseite) als Fehler statt als Erfolg diff --git a/ROADMAP.md b/ROADMAP.md index 7ab9c38..974908b 100644 --- a/ROADMAP.md +++ b/ROADMAP.md @@ -1,6 +1,6 @@ # ROADMAP — Baustelle PWA -Stand: 2026-09-18 · Gegenstück: `data/bericht` (Modul-Version 1.7.1) +Stand: 2026-09-30 · Gegenstück: `data/bericht` (Modul-Version 1.7.1) Die PWA hat kein eigenes Backend — alles läuft über `custom/bericht/api/`. Punkte, die eine API-Änderung brauchen, sind mit **[API]** markiert und stehen zusätzlich in der ROADMAP des @@ -41,7 +41,7 @@ nur kurz frei (bzw. prüft, ob sie seit der Auswahl verändert wurden) → `NotR („could not be read, typically due to permission problems…"). Die betroffenen Fotos landeten nicht in der Queue. -- [x] Fix (lokal, noch nicht deployed): erst **alle** Dateien sofort in den Speicher lesen +- [x] ✅ Fix live seit 30.09.2026 (Commit b824e95): erst **alle** Dateien sofort in den Speicher lesen (`readFileNow`, ein Wiederholversuch nach 500 ms), dann hochladen. Unlesbare Datei → klare Meldung „bitte nochmal auswählen". - [ ] Am Handy gegenprüfen: 8–10 Fotos aus der Galerie auf einmal auswählen.