/** * spritpreise.js - gemeinsame Steuerungslogik für alle Spritpreise-Seiten * (index.php UND jahresstatistik.php, siehe Chat 01.08.2026) - Jahres- * Navigation (nur jahresstatistik.php), AJAX-Nachladen der Panels sowie * der Zeilenumbruch der Preisspannen neben den Panel-Überschriften. * Ausgelagert statt in jeder Seite dupliziert, damit beide Seiten immer * dasselbe Verhalten haben. * * Erwartet vor dem Einbinden gesetzte globale Variablen (siehe jeweilige * PHP-Seite): * window.SPRIT_MODUS - "tage" (index.php, rollierende * Kurzzeitansicht) oder "jahr" * (jahresstatistik.php, mit Jahres-Nav) * window.SPRIT_TAGE - nur im "tage"-Modus: Fenstergröße (z.B. 30) * window.SPRIT_MIN_JAHR, window.SPRIT_AKTUELLES_JAHR, window.SPRIT_JAHR * - nur im "jahr"-Modus * * Lädt automatisch die Panels, die auf der jeweiligen Seite tatsächlich * vorhanden sind: "panel-preise" nur auf index.php, "panel-diesel"/ * "panel-e10"/"panel-e5" auf beiden Seiten. */ // Steuert den Zeilenumbruch der Preisspanne neben den Panel-Überschriften: // passen Star- und Esso-Teil samt Trenner ("|") in eine Zeile, bleiben sie // zusammen; sonst wird der Trenner ausgeblendet und der Esso-Teil bricht in // eine eigene Zeile um (aufgerufen aus sprit_preisspanne_skript() in // charts.php und beim Fenster-Resize unten). window.spritPreisspanneLayout = function (el) { var star = el.querySelector('.preis-star'); var esso = el.querySelector('.preis-esso'); var trenner = el.querySelector('.preis-trenner'); if (!star || !esso || !trenner) { return; } trenner.style.display = 'inline'; esso.style.display = 'inline'; var verfuegbar = el.clientWidth; var benoetigt = star.offsetWidth + trenner.offsetWidth + esso.offsetWidth; if (verfuegbar > 0 && benoetigt > verfuegbar) { trenner.style.display = 'none'; esso.style.display = 'block'; } }; (function () { var MODUS = window.SPRIT_MODUS || 'jahr'; var TAGE = window.SPRIT_TAGE; var MIN_JAHR = window.SPRIT_MIN_JAHR; var AKTUELLES_JAHR = window.SPRIT_AKTUELLES_JAHR; var angezeigtesJahr = window.SPRIT_JAHR; // Ersetzt den Inhalt eines Containers per fetch()-Ergebnis und führt // dabei enthaltene