diff --git a/css/solar.css b/css/solar.css index bd45463..85178c8 100644 --- a/css/solar.css +++ b/css/solar.css @@ -2955,6 +2955,11 @@ input[type='range']::-webkit-slider-runnable-track { color: var(--ton-schrift-3, #6f7a81); } .zl-ding.nichtdran .zl-etikett b { color: var(--ton-schrift-3, #6f7a81); } +.zl-nichtdran { + margin-right: .35rem; + font-size: .72rem; + color: var(--ton-schrift-2, #9aa6ad); +} /* Zeitfenster: der Balken traegt Laeufe und die frueheste Marke. */ .zl-fenster { min-width: 10px; } diff --git a/js/solar/zeitleiste.js b/js/solar/zeitleiste.js index 9fbdf5f..fbeee91 100644 --- a/js/solar/zeitleiste.js +++ b/js/solar/zeitleiste.js @@ -110,7 +110,7 @@ function zlStapeln(eintraege, breite) { const alle = eintraege.map(a => { const [von, bis] = zlLage(a); const etikett = zlEtikettText(a); - const lang = zlBreite(etikett) + 26; + const lang = zlBreite(etikett) + 26 + (a.dran ? 0 : 16); // Platz fürs Zeichen "nicht dran" let links = px(von) - 8; let rechts = a.art === "fenster" ? Math.max(px(bis), px(von) + lang) : px(von) + lang; const ueber = px(von) + lang > breite - 4; @@ -306,7 +306,7 @@ function zeitleisteZeichnen() { + 'kommt noch' + 'Zeitfenster, wartet auf Bedingung' + 'Kette' - + 'an diesem Tag nicht dran' + + 'an diesem Tag nicht dran' + ""; ziel.innerHTML = html; @@ -336,15 +336,18 @@ function zlEintrag(e, d, prozent) { const lauf = zustand !== "gelaufen" ? "" : ' ' + (a.art === "fenster" ? '' + zlText(a.laeufe[a.laeufe.length - 1]) + "" : ""); const kappe = e.kappe ? ' style="max-width:' + Math.round(e.kappe) + "px" + (e.versatz ? ";margin-left:" + Math.round(e.versatz) + "px" : "") + '"' : ""; - const etikett = '" + // "Nicht dran" hat ein eigenes Zeichen vorn im Etikett - bei Punkt und + // Fenster dasselbe, und dasselbe wie in der Legende. + const nichtdran = zustand === "nichtdran" ? '' : ""; + const etikett = '" + nichtdran + "" + zlText(zlEtikettZeit(a)) + "" + zlText(a.name) + lauf + ""; if (a.art === "fenster") { - // Läufe und die früheste Marke als Punkte auf dem Balken. + // Läufe als Punkte auf dem Balken. Der früheste Zeitpunkt im Fenster + // (etwa Sonnenuntergang + 30) bekommt keine Marke mehr: sie lag meist + // unter dem Etikett und sah dort wie ein Zustandszeichen aus. Er steht + // im Hinweis ("frühestens 19:01"). let marken = ""; - if (a.punkt !== null && a.punkt > a.von && !a.laeufe.length) { - marken += ''; - } a.laeufe.forEach(t => { const m = zlMinuteAus(t); marken += '';