feat: Gezeiten im Logbuch per Open-Meteo Marine

HW/NW-Felder im Reisetag und Live-Journal mit Server-Proxy auf Basis von
Open-Meteo Marine am GPS-Standort; neueste Position und frischer DB-Stand
vor dem Abruf, Bestätigung nach Übernehmen, Accordion-Layout bereinigt.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-06-11 14:22:25 +02:00
parent d667062ec2
commit 5d4e498528
26 changed files with 1353 additions and 7 deletions
+16
View File
@@ -190,6 +190,22 @@
"departure": "Port de départ (départ de)",
"destination": "Port de destination (vers)",
"route": "Voyage au départ de/à destination de",
"tides": "Marées",
"tide_high_water": "Pleine mer",
"tide_low_water": "Basse mer",
"tide_fetch_btn": "Récupérer les marées",
"tide_fetch_loading": "Chargement des marées…",
"tide_disclaimer": "Aucune garantie d'exactitude — vérifiez auprès de sources officielles !",
"tide_location_required": "Les marées nécessitent une position actuelle (max. 2 h) ou un port de départ.",
"tide_position_stale": "La dernière position date de plus de 2 heures. Enregistrez la position ou indiquez le port de départ.",
"tide_fetch_failed": "Impossible de récupérer les marées.",
"tide_no_data": "Aucune donnée de marée pour cet endroit.",
"tide_place_not_found": "« {{place}} » introuvable — indiquez un lieu côtier ou un port.",
"tide_fetched_at_position": "Prévision modèle à la position actuelle (Open-Meteo Marine).",
"tide_fetched_from": "Données de {{place}} (env. {{distance}} km)",
"tide_fetched_from_departure": "Marées basées sur le départ « {{place}} » (pas de position GPS actuelle).",
"tide_applied_success": "Marées enregistrées : pleine mer {{highWater}}, basse mer {{lowWater}}. Visible dans l’éditeur du jour de voyage, section « Marées ».",
"tide_apply": "Appliquer",
"tanks": "Réservoirs",
"customize_columns": "Ajuster les colonnes",
"column_selector_title": "Colonnes à afficher",