Commit Graph

8 Commits

Author SHA1 Message Date
035c444dfb Aktuelle Einkaufsliste serverseitig merken (Fix iOS/PWA ohne Session)
Made-with: Cursor
2026-04-23 19:27:35 +02:00
0c90213539 Kassazettel-Upload mit OCR-Auswertung und Produktvorschlaege einfuehren.
Es gibt jetzt einen eigenen Kassazettel-Bereich mit Foto-Upload, OCR-Extraktion (Tesseract) und editierbaren Vorschlagsfeldern fuer Geschaeft, Datum und Summe. Zusaetzlich zeigt das schnelle Neueintrag-Feld Vorschlaege aus bestehenden Produkten der aktuellen Liste als Dropdown.

Made-with: Cursor
2026-03-31 21:04:39 +02:00
a590a74cab Fix: HTTP 500 bei Foto ohne Preis (price_decimal NULL + Foto-Validierung)
- Migration: price_decimal sicher nullable (Mediathek/Foto-only)

- Validierung: mimes statt File::types, max 15360 KB

Made-with: Cursor
2026-03-30 17:58:12 +02:00
99496071ad Such-URL-Vorlagen, Zeilen-Bearbeitung, Loeschen, Chevron-CSS
- Geschaefte: search_url_template (Migration), Pflege-UI eingeklappt mit Kacheln, Testen-Link

- Eintraege: Zeile oeffnet Panel statt Icon; DELETE mit Foto-Bereinigung; Such-Links im Panel

- details-Chevron-Drehung ueber app.css (.details-chevron), Build in html/build aktualisiert

Hinweis: StoreSearchController/SparSearchService bleiben unversioniert (nicht angebunden).
Made-with: Cursor
2026-03-30 17:51:26 +02:00
bfc6247322 Preisstaffel fuer Eintraege erfassen
Made-with: Cursor
2026-03-30 12:27:53 +02:00
635a0ec28a Migration shopping_items: idempotent (Duplikat-Spalten, MySQL-Check, Repair)
Made-with: Cursor
2026-03-29 21:06:53 +02:00
59cfc18f48 Teilen mit anderen Benutzern 2026-03-29 20:50:30 +02:00
0a07894d55 Initialer Stand der Einkaufsliste
Made-with: Cursor
2026-03-27 12:36:18 +01:00