Commit graph

528 commits

Author SHA1 Message Date
96e7a97b52 Infra: Container-Name ban-yaro→banyaro, Favicon-Route, Cache-Bust v3
- Makefile + docker-compose.yml: container_name ban-yaro → banyaro
- sw.js: Cache-Version auf by-v3 (neue Icons + Health-Assets)
- .gitignore: /icons/ (Design-Quell-Dateien) ausschließen
2026-04-13 19:29:43 +02:00
5a0be0e886 Fix: Toasts verschwinden jetzt (doppeltes ease + Fallback-Timeout)
CSS: var(--transition-normal) enthielt bereits 'ease', dadurch
'toast-out 200ms ease ease' = ungueltig, animationend feuert nie.
JS: setTimeout-Fallback nach 300ms als Sicherheitsnetz.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-12 18:27:30 +02:00
c37befd82b Makefile: Hinweis dass sync+restart nur fuer Python reicht
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-12 18:19:52 +02:00
5000d8ff9f leaflet.js: Attribution-Control-Hook deaktiviert
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-12 18:17:19 +02:00
ba7a91ae2b leaflet.js/css: Attribution + ukrainische Flagge entfernt
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-12 18:15:43 +02:00
d888119b10 leaflet.css: alle Attribution-Selektoren inkl. Flag auf display:none
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-12 18:13:40 +02:00
53b37e7c09 Leaflet lokal bundlen, kein CDN mehr
leaflet.js + leaflet.css lokal in static/, Attribution in CSS
auf display:none gesetzt. Loest CDN-SSL-Fehler + Attribution.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-12 18:11:37 +02:00
2baba57941 Karte: Attribution per style-Injection verstecken (cache-sicher)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-12 18:06:23 +02:00
a256568c0c Karte: Attribution per JS aus DOM entfernen
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-12 18:05:35 +02:00
c695f5f639 CSS: Leaflet-Attribution-Control ausblenden
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-12 18:04:47 +02:00
67eb515c35 Karte: CSS-Load abwarten + invalidateSize (schwarze Karte fix)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-12 18:03:56 +02:00
85bab155cb Karte: Leaflet-Attribution vollstaendig entfernen
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-12 18:01:52 +02:00
7358a28cc7 Karte: Leaflet-Attribution entfernen, nur OSM-Text
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-12 18:00:37 +02:00
ea670310e2 Makefile: SERVICE-Variable fuer docker compose restart
CONTAINER = container_name (fuer logs/exec/ps)
SERVICE   = compose-Service-Name (fuer restart)
War bisher gleich gesetzt, aber compose und container haben
unterschiedliche Namen (banyaro vs ban-yaro).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-12 17:58:32 +02:00
472e0dd63f Hunde-Profil + Login/Register + Auth-Redirect
dog-profile.js: Profil anlegen, anzeigen, bearbeiten, Foto-Upload,
  Alter-Berechnung, Löschen (mit Confirm).
settings.js: Login/Register-Tabs, Logout, Push-Subscription,
  nach Login → Tagebuch oder Profil anlegen.
app.js: _onLoggedOut() leitet direkt zur Settings-Seite weiter.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-12 17:57:51 +02:00
cc36ead720 Sprint 2: Giftköder-Alarm (poison.py + poison.js)
Backend: vollständiges CRUD (list/report/confirm/resolve/photo),
Haversine-Radius-Filter, Auto-Expiry 7 Tage, Foto-Upload.
Frontend: Leaflet-Karte + Meldungsliste + GPS-Formular.
main.py: /media StaticFiles-Mount für Foto-Serving (auch Diary).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-12 17:52:21 +02:00
44b1451966 Sprint 1: Tagebuch — Backend-Routes + Frontend-Modul
diary.py: CRUD, KI-Auto-Tags, Medien-Upload, Ownership-Check
diary.js: Timeline (nach Monat gruppiert), Erstellen/Bearbeiten/Löschen,
Foto-Upload, Meilenstein-Hervorhebung, Tags, Detail-Modal
components.css: Diary-Card-Styles (Timeline, Milestone, Foto, Tags)
2026-04-12 17:26:28 +02:00
70f5eedafa Hinweis: NPM Forward-IP muss 10.47.11.99 sein (Macvlan-Shim) 2026-04-12 17:17:03 +02:00
846511d79b Healthcheck: / statt /api/docs (funktioniert auch ohne docs_url) 2026-04-12 17:14:01 +02:00
e466a5b4f0 Docker: voller Pfad /usr/local/bin/docker auf DS (nicht im PATH) 2026-04-12 16:57:16 +02:00
569816d9a4 COPYFILE_DISABLE=1: macOS xattr-Warnungen bei tar unterdrücken 2026-04-12 16:55:50 +02:00
3547715555 Deploy: rsync → tar+ssh (kein rsync auf DS nötig) 2026-04-12 16:51:41 +02:00
43c63f0e59 Deploy via rsync statt git auf DS — kein git auf DS nötig 2026-04-12 16:50:36 +02:00
4499055b99 SSH-Port-Check in Makefile und setup-ds.sh, HTTPS-Clone auf DS 2026-04-12 16:48:19 +02:00
e364e43480 Deploy-Skripte: Makefile, setup-ds.sh, new-feature.sh 2026-04-12 16:43:16 +02:00
00be2bbcd5 Sprint 0: Backend, Docker, KI-Layer mit Free/Premium-Trennung 2026-04-12 16:39:34 +02:00
84f49fafcf Sprint 0: Design System, App Shell, PWA, zentrales JS-Fundament 2026-04-12 16:33:25 +02:00
756e17faba Projektstruktur und Roadmap initial 2026-04-12 16:17:20 +02:00