diff options
Diffstat (limited to 'src/main/resources')
| -rw-r--r-- | src/main/resources/eu/mulk/aendggner/web/app.js | 19 | ||||
| -rw-r--r-- | src/main/resources/eu/mulk/aendggner/web/index.html | 20 | ||||
| -rw-r--r-- | src/main/resources/eu/mulk/aendggner/web/style.css | 30 |
3 files changed, 59 insertions, 10 deletions
diff --git a/src/main/resources/eu/mulk/aendggner/web/app.js b/src/main/resources/eu/mulk/aendggner/web/app.js index a592612..fb55cbd 100644 --- a/src/main/resources/eu/mulk/aendggner/web/app.js +++ b/src/main/resources/eu/mulk/aendggner/web/app.js @@ -52,6 +52,7 @@ formular.addEventListener("submit", async (ereignis) => { const artikel = document.querySelector("#artikel").value.trim(); const stichtag = document.querySelector("#stichtag").value.trim(); const nurText = document.querySelector("#nurtext").checked; + const vollstaendig = document.querySelector("#vollstaendig").checked; knopf.disabled = true; zeige("Lade das Rechenwerk (einmalig einige Megabyte) und werte aus …", "arbeit"); @@ -72,7 +73,7 @@ formular.addEventListener("submit", async (ereignis) => { worker.postMessage({ stamm, patches, - vollstaendig: document.querySelector("#vollstaendig").checked, + vollstaendig, artikel: artikel === "" ? null : artikel, stichtag: stichtag === "" ? null : stichtag, nurText, @@ -97,9 +98,11 @@ formular.addEventListener("submit", async (ereignis) => { return; } + // Die Zahl zählt die Einträge der Synopse. Sind die unveränderten Vorschriften mit + // aufgenommen, so sind das nicht die geänderten Normen, und sie heißen dann anders. zeige( `${ergebnis.angewandt} Befehle angewandt, ${ergebnis.manuell} manuell zu prüfen, ` + - `${ergebnis.normen} geänderte Normen. `, + `${ergebnis.normen} ${vollstaendig ? "Normen in der Synopse" : "geänderte Normen"}. `, "fertig", ); oeffne(ergebnis.html, "text/html;charset=utf-8", "Synopse öffnen"); @@ -109,3 +112,15 @@ formular.addEventListener("submit", async (ereignis) => { knopf.disabled = false; } }); + +// Ein geschlossenes <details> druckt seinen Inhalt nicht; ein Vordruck gehört aber +// vollständig aufs Papier, auch der eingeklappte Teil. +const weitere = document.querySelector(".weitere"); +let warOffen = false; +addEventListener("beforeprint", () => { + warOffen = weitere.open; + weitere.open = true; +}); +addEventListener("afterprint", () => { + weitere.open = warOffen; +}); diff --git a/src/main/resources/eu/mulk/aendggner/web/index.html b/src/main/resources/eu/mulk/aendggner/web/index.html index 31ca03b..69adbdb 100644 --- a/src/main/resources/eu/mulk/aendggner/web/index.html +++ b/src/main/resources/eu/mulk/aendggner/web/index.html @@ -132,6 +132,18 @@ gewählten Reihenfolge nacheinander angewendet)</span></label> <input type="file" id="aenderung" name="aenderung" multiple required> </div> + <div class="feld ankreuzfeld"> + <label> + <input type="checkbox" id="vollstaendig" name="vollstaendig" checked> + Unveränderte Vorschriften mit in die Synopse aufnehmen + </label> + </div> + </div> + </div> + + <details class="weitere"> + <summary>Weitere Angaben</summary> + <div class="felder"> <div class="feld"> <label for="artikel">Anzuwendender Artikel <span class="erl">(nur auszufüllen, wenn abweichend: ohne Angabe werden alle @@ -150,12 +162,6 @@ </div> <div class="feld ankreuzfeld"> <label> - <input type="checkbox" id="vollstaendig" name="vollstaendig"> - Unveränderte Vorschriften mit in die Synopse aufnehmen - </label> - </div> - <div class="feld ankreuzfeld"> - <label> <input type="checkbox" id="nurtext" name="nurtext"> Statt der Synopse nur den maschinell gelesenen Text der Änderungsdokumente ausgeben </label> @@ -164,7 +170,7 @@ oben wieder einreichen.</p> </div> </div> - </div> + </details> <div class="block"> <div class="leitspalte">Antragstellung</div> diff --git a/src/main/resources/eu/mulk/aendggner/web/style.css b/src/main/resources/eu/mulk/aendggner/web/style.css index 21f5942..ce64a6f 100644 --- a/src/main/resources/eu/mulk/aendggner/web/style.css +++ b/src/main/resources/eu/mulk/aendggner/web/style.css @@ -250,6 +250,33 @@ input[type="file"]::file-selector-button:hover { background: var(--grund); } +/* Nebenangaben, die selten auszufüllen sind, stehen hinter einer Klappe. Deren Aufschrift + tritt an die Stelle der Leitspalte und läuft über die volle Breite — dieselbe Form, die + die Leitspalte auf dem Telefon ohnehin annimmt. Das Dreieck ist dasselbe wie an der + Ausfüllhilfe. */ +.weitere summary { + padding: 0.4rem 0.5rem; + border-right: 1px solid var(--linie); + border-bottom: 1px solid var(--linie); + background: var(--grund); + font-size: 0.6875rem; + font-weight: bold; + cursor: pointer; + list-style: none; +} + +.weitere summary::-webkit-details-marker { + display: none; +} + +.weitere summary::before { + content: "\25B8\00A0"; +} + +.weitere[open] summary::before { + content: "\25BE\00A0"; +} + /* Der Nachsatz zu einem Ankreuzfeld steht unter dem Text, nicht neben ihm, und rückt bis unter die Aufschrift ein. */ .nachsatz { @@ -531,7 +558,8 @@ code { a { text-decoration: none; } .block, .beachtung, .verfuegung { break-inside: avoid; } - .leitspalte, .ausfuellhinweis, .verfuegung, .verfuegung h2, .kreuz, .ausfuellhilfe { + .leitspalte, .ausfuellhinweis, .verfuegung, .verfuegung h2, .kreuz, .ausfuellhilfe, + .weitere summary { -webkit-print-color-adjust: exact; print-color-adjust: exact; } |
