hmt пре 4 година
родитељ
комит
3f52123fb5

+ 0 - 141
AHR 1. Konferenz.html

@@ -1,141 +0,0 @@
-{#each schueler as s (s.ID)}
-  {#each s.abschnitte.filter(aktHalbjahr) as hj (hj.ID)}
-    <div class="page grid" orientation="portrait" size="A4">
-      <div class="header">
-        <Seitenlogo logo="{privat.traegerLogo}"/>
-        <Pageheader logo="{privat.logo}" untertitel="{privat.untertitel}"/>
-      </div>
-      <div class="main">
-        <b>Abiturprüfung {hj.Jahr+1}</b><br />Ergebnis der 1. Konferenz des allgemeinen Prüfungsausschusses
-        <br />{s.anrede} <b>{s.Vorname} {s.Zusatz || ''} {s.Name}</b>
-        <Voffset v="0.5"/>
-        <table class="table table-bordered table-eng">
-          <tr>
-            <td rowspan="3" width="40px">Abitur- fach</td>
-            <td rowspan="3">Fach – In der Reihenfolge der erlassenen Stundentafel</td>
-            <td colspan="4">Leistungsbewertung in den Halbjahren der Qualifikationsphase</td>
-            <td colspan="3">Zur Zulassung angerechnete Punkte</td>
-            <td rowspan="3">Durchschnitts- punktzahl</td>
-          </tr>
-          <tr>
-            <td class="text-center" rowspan="2">12.1</td>
-            <td class="text-center" rowspan="2">12.2</td>
-            <td class="text-center" rowspan="2">13.1</td>
-            <td class="text-center" rowspan="2">13.2</td>
-            <td class="text-center" rowspan="2">Grund- kurse</td>
-            <td class="text-center" colspan="2">Leistungskurse</td>
-          </tr>
-          <tr>
-            <td class="text-center">einfach</td>
-            <td class="text-center">zweifach</td>
-          </tr>
-          {#each s.abi_abschluss_faecher.sort((a,b) => a.FSortierung - b.FSortierung) as f}
-            <tr>
-              <td class="text-center">{f.AbiFach || ''}</td>
-              <td>{f.fach.Bezeichnung}</td>
-              <td class="text-center">{f.R12_1 === '-' ? `(${f.P12_1 || '–'})` : f.P12_1}</td>
-              <td class="text-center">{f.R12_2 === '-' ? `(${f.P12_2 || '–'})` : f.P12_2}</td>
-              <td class="text-center">{f.R13_1 === '-' ? `(${f.P13_1 || '–'})` : f.P13_1}</td>
-              <td class="text-center">{f.R13_2 === '-' ? `(${f.P13_2 || '–'})` : f.P13_2}</td>
-              <td class="text-center">{f.KursartAllg === "GK" ? f.Zulassung || '**' : '**'}</td>
-              <td class="text-center">{f.KursartAllg === "LK" ? f.Zulassung/2 : '**'}</td>
-              <td class="text-center">{f.KursartAllg === "LK" ? f.Zulassung : '**'}</td>
-              <td class="text-center">{f.Durchschnitt ? f.Durchschnitt.toFixed(2) : '**'}</td>
-            </tr>
-          {/each}
-          <tr>
-            <td colspan="2"></td>
-            <td colspan="3"><b>Summe der Punkte</b></td>
-            <td></td>
-            <td class="text-center">{s.abi_abschluss.SummeGK}</td>
-            <td></td>
-            <td class="text-center">{s.abi_abschluss.SummeLK}</td>
-          </tr>
-          <tr>
-            <td colspan="9"><br /></td>
-          </tr>
-          <tr>
-            <td colspan="2"></td>
-            <td colspan="6"><b>Gesamtsumme</b></td>
-            <td class="text-center">{s.abi_abschluss.SummeGK + s.abi_abschluss.SummeLK}</td>
-          </tr>
-          <tr>
-            <td colspan="2"></td>
-            <td colspan="6"><b>Anzahl der eingebrachten Kurse</b></td>
-            <td class="text-center">{s.abi_abschluss.Kurse_I}</td>
-          </tr>
-        </table>
-        Die Punktzahlen in Klammern wurden nicht in die Zulassungsberechnung einbezogen.
-        <Voffset v="1"/>
-        <div class="flex-grid">
-          <div class="col-2">Berechnung der Punktsumme im Block I gemäß § 15 in Verbindung mit § 25 Absatz 3 APO-BK Anlage D:</div>
-          <div class="col text-center"><h4>{s.abi_abschluss.Punktsumme_I}</h4></div>
-        </div>
-        Die Prüfung der Zulassung erfolgte unter Berücksichtigung aller erbrachten Leistungen in der
-        Qualifikationsphase mit der Maßgabe der Erreichung einer höchstmöglichen Punktzahl (für den
-        Block I) gemäß § 15 Absatz 2 APO-BK Anlage D. Falls der Prüfling beantragen möchte, dass
-        Änderungen bezüglich der Einbringung für die Berechnung der Punktsumme im Block I
-        vorgenommen werden, so ist dies innerhalb von drei Werktagen nach der ersten Konferenz schriftlich
-        gegenüber der Schule zu erklären.
-        <Voffset v="0.5"/>
-        {s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name} ist zur Abiturprüfung
-        <b>{s.abi_abschluss.Zugelassen === '+' ? '' : 'nicht'} zugelassen.</b>
-        {#if s.abi_abschluss.Zugelassen !== '+'}
-          <br>Es liegen folgende Verstöße gegen die Zulassungsbedingung(en)
-          nach § 15 APO-BK Anlage D vor:
-          <ul>
-            {#if s.abi_abschluss.Kurse_I < 200}<li>Nichterreichen von mindestens 200 Punkten im Block I</li>{/if}
-            {#if s.abi_abschluss.AnzahlKurse_0 > 0}<li>Bewertung eines einzubringenden Kurses mit null Punkten</li>{/if}
-            {#if (s.abi_abschluss.Kurse_I === 32 && s.abi_abschluss.Defizite_I > 6)
-              || (s.abi_abschluss.Kurse_I < 38   && s.abi_abschluss.Defizite_I > 7)
-              || (s.abi_abschluss.Kurse_I < 41   && s.abi_abschluss.Defizite_I > 8)
-              && (s.abi_abschluss.LK_Defizite_I < 4)}
-              <li>Überschreitung der maximal zulässigen Anzahl einzubringender Kurse mit weniger als fünf Punkten</li>
-            {/if}
-          </ul>
-        {/if}
-			</div>
-      <div class="footer">
-        <div class="flex-grid">
-          <div class="col">
-            {schule.Ort}, den {datum(hj.Konferenzdatum)}
-          </div>
-          <div class="col text-center klein">
-            <Voffset v="3"/>
-            <hr />
-            {schule.SchulleiterVorname} {schule.SchulleiterName}
-            <br />Vorsitzender des allgemeinen Prüfungsausschusses
-          </div>
-        </div>
-      </div>
-    </div>
-  {/each}
-{/each}
-<script>
-  export const kommentar = `
-[Anlage D 33b](https://bass.schul-welt.de/3129.htm#AnlageD33b)
-
-[Bass § 15](https://bass.schul-welt.de/3129.htm#pgfId-3911082)
-  `
-  import { datum }  from './helfer'
-
-  import Seitenlogo from './partials/Seitenlogo.html'
-  import Pageheader from './partials/Pageheader.html'
-  import Voffset from './partials/Voffset.html'
-  import Fussnote from './partials/Fussnoten.html'
-
-  export let schueler, schule, privat, jahr, abschnitt
-  const aktHalbjahr = (a) => a.Jahr === jahr && a.Abschnitt === abschnitt
-</script>
-
-<style>
-  @import 'css/main.css';
-  .table-bordered {
-    border-collapse: collapse; }
-  .table-bordered tr td {
-    border: thin solid #ddd;
-    line-height: 1.3rem }
-  .table-eng {
-    margin-bottom: 0;
-  }
-</style>

+ 0 - 127
AHR AGZ 11.html

@@ -1,127 +0,0 @@
-{#each schueler as s (s.ID)}
-  {#each s.abschnitte.filter(aktHalbjahr) as hj (hj.ID)}
-    <div class="page grid" orientation="portrait" size="A4">
-      <Seitenlogo logo="{privat.traegerLogo}"/>
-      <Pageheader art="daten/agz.svg" logo="{privat.logo}" untertitel="{privat.untertitel}"/>
-      <div class="main">
-        <div style="font-size: 15pt; line-height: 1.5em">
-          {bg(s, 'Schulform')}
-        </div>
-        <div style="font-size: 12pt; line-height: 1.2em">
-          {bg(s, 'Bereich')}
-          {#if s.ASDSchulform.startsWith('B')}
-            <br />
-            Abschluss {@html s.Geschlecht === 3 ? bg(s, 'Berufsbezeichnung_m') : bg(s, 'Berufsbezeichnung_w')}
-          {/if}
-        </div>
-        <Voffset v="1"/>
-        <b>{s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name},</b>
-        <br />geboren am {datum(s.Geburtsdatum)} in {s.Geburtsort},<br />
-        war vom {datum(s.BeginnBildungsgang)} bis {datum(s.Entlassdatum)} {s.schueler_in}
-        des Bildungsgangs {bg(s, 'Zeugniskopf')}.
-        <br />{s.Geschlecht === 3 ? 'Er':'Sie'} war zuletzt {s.schueler_in} in der Klasse {s.Klasse}.
-        <Voffset v="2"/>
-        Leistungen laut Konferenzbeschluss vom {datum(hj.Konferenzdatum)}:
-        <Noten
-          noten={hj.noten}
-          fachGliederungen={s.fachklasse.fach_gliederungen}
-          ger
-          fachklasse={s.fachklasse.Kennung}
-          faechergruppenIds={[10,20,30]}
-        ></Noten>
-        <hr />
-        {#if zeigeVersetzungsvermerk}
-          <b>{versetzungsvermerk(hj)}</b>
-        {/if}
-        <button class="vbutton no-print" on:click="{() => zeigeVersetzungsvermerk = !zeigeVersetzungsvermerk}">
-          Versetzungsvermerk {zeigeVersetzungsvermerk ? 'entfernen' : 'anzeigen'}
-        </button>
-        <Voffset v="1"/>
-        <b>Bemerkungen</b><br />{@html bemerkungen(hj)}
-      </div>
-      <div class="footer">
-        <Fussnote {schule} ger rechtsbehelfsbelehrung={false}></Fussnote>
-      </div>
-    </div>
-    <div class="page grid" orientation="portrait" size="A4">
-      <div class="main">
-        Seite 2/2 des Abgangsszeugnisses für {s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name}
-        <Voffset v="2"/>
-        {#if zeige_FHR}
-          <Voffset v="2"/>
-          {s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name} hat nach § 13 a Absatz 1 Anlage D
-          APO-BK mit der Versetzung in die Jahrgangsstufe 12 die
-          Voraussetzungen für die Zuerkennung des schulischen Teils der
-          Fachhochschulreife erfüllt. Der Abschluss ist im Deutschen und
-          Europäischen Qualifikationsrahmen dem Niveau 4 zugeordnet.
-          <Voffset v="2"/>
-          Dieses
-          Zeugnis gilt in Verbindung mit dem Nachweis einer mindestens
-          zweijährigen abgeschlossenen Berufsausbildung nach Bundes- oder
-          Landesrecht als Nachweis der Fachhochschulreife. Es berechtigt
-          in den Ländern Nordrhein-Westfalen, Niedersachsen und
-          Schleswig-Holstein zum Studium an Fachhochschulen.
-          <Voffset v="2"/>
-          Durchschnittsnote: {s.DurchschnittsnoteFHR} – in&nbsp;Worten: {s.DSN_FHR_Text}
-        {/if}
-        <Voffset v="1"/>
-        <button class="vbutton no-print" on:click="{() => zeige_FHR = !zeige_FHR}">
-          FHR abgeschlossen: {zeige_FHR ? 'Ja' : 'Nein'}
-        </button>
-      </div>
-      <div class="footer">
-        <div class="flex-grid">
-          <div class="col-2">
-            {schule.Ort}, den {datum(hj.ZeugnisDatum)}
-          </div>
-          <div class="col text-center klein">
-            <Voffset v="3"/>
-            <hr />
-            {schule.SchulleiterVorname} {schule.SchulleiterName}<br />{schule.schulleiter_in}
-          </div>
-          <div class="col text-center klein">
-            <Voffset v="3"/>
-            Siegel
-          </div>
-          <div class="col text-center klein">
-            <Voffset v="3"/>
-            <hr />
-            {hj.lehrer.Vorname} {hj.lehrer.Nachname}<br />{hj.klassenlehrer_in}
-          </div>
-        </div>
-        <Voffset v="9"/>
-        <Fussnote {schule}></Fussnote>
-      </div>
-    </div>
-  {/each}
-{/each}
-
-<script>
-  import { datum, versetzungsvermerk, volljaehrigBei, bemerkungen, bg }  from './helfer'
-
-  import Seitenlogo from './partials/Seitenlogo.html'
-  import Pageheader from './partials/Pageheader.html'
-  import Voffset from './partials/Voffset.html'
-  import Noten from './partials/Noten.html'
-  import Fussnote from './partials/Fussnoten.html'
-
-  export let schueler, schule, privat, jahr, abschnitt
-  let zeigeVersetzungsvermerk = true
-  const aktHalbjahr = a => a.Jahr === jahr && a.Abschnitt === abschnitt
-  let zeige_FHR
-  const fhrFach = (s, fach, id) => {
-    const pid = 'P1' + id
-    if (!fach[pid]) return
-    const fach2 = s.fhr_abschluss_faecher.find(f => f.Fach_ID === fach.Fach_ID)
-    const rsid = 'RSII_' + id
-    return fach2[rsid] === '+' ? fach[pid] : `(${fach[pid]})`
-  }
-</script>
-
-<style>
-  @import 'css/main.css';
-  .vbutton {
-    background-color: red;
-    color: white;
-  }
-</style>

+ 0 - 270
AHR AGZ zweiseitig.html

@@ -1,270 +0,0 @@
-{#each schueler as s (s.ID)}
-  {#each aktHalbjahrFuer(s) as hj (hj.ID)}
-    <div class="page grid" orientation="portrait" size="A4" style="font-size: 0.8rem">
-      <div class="header">
-        <Seitenlogo logo="{privat.traegerLogo}"/>
-        <Pageheader art="daten/agz.svg" logo="{privat.logo}" untertitel="{privat.untertitel}"/>
-      </div>
-      <div class="main">
-          <div style="font-size: 12pt; line-height: 1.5em">Abgangszeugnis gemäß §13 APO-BK, Anlage D</div>
-          <div style="font-size: 11pt; line-height: 1.2em">Berufliches Gymnasium, {bg(s, 'Bereich')}</div>
-          <Voffset v="0.5"/>
-          {s.anrede} <b>{s.Vorname} {s.Zusatz || ''} {s.Name}</b>, geboren am {datum(s.Geburtsdatum)} in {s.Geburtsort},
-          <br />hat vom {datum(s.Aufnahmedatum)} bis zum {datum(s.Entlassdatum)} den <b>Bildungsgang {bg(s, 'Zeugniskopf')}</b> besucht.
-          <br>{s.Geschlecht === 3 ? 'Er':'Sie'} war zuletzt {s.schueler_in} im {hj.Abschnitt}. Halbjahr der Jahrgangstufe {hj.Jahrgang+10}.
-          <Voffset v="0.5"/>
-          In der Konferenz am {datum(hj.Konferenzdatum)} sind folgende Leistungen festgestellt worden:
-          <table class="table table-bordered table-eng">
-            <tr>
-              <td>Fach</td>
-              <td>Aufg.-<br>feld<sup>2</sup></td>
-              <td>Kurs-<br>Art<sup>3</sup></td>
-              <td colspan="2" class="text-center">12.1<sup>4</sup></td>
-              <td colspan="2" class="text-center">12.2<sup>4</sup></td>
-              <td colspan="2" class="text-center">13.1<sup>4</sup></td>
-              <td colspan="2" class="text-center">13.2<sup>4</sup></td>
-            </tr>
-            <tr>
-              <td colspan="3"></td>
-              <td class="text-center">Note</td>
-              <td class="text-center">Punkte</td>
-              <td class="text-center">Note</td>
-              <td class="text-center">Punkte</td>
-              <td class="text-center">Note</td>
-              <td class="text-center">Punkte</td>
-              <td class="text-center">Note</td>
-              <td class="text-center">Punkte</td>
-            </tr>
-            {#each s.abi_abschluss_faecher.sort((a, b) => a.FSortierung < b.FSortierung ? -1 : 1) as f}
-              <tr>
-                <td>{f.fach.Bezeichnung}
-                  {#if f.fach.IstSprache === '+'}{fremdsprache(f, s.fachklasse.Kennung)}<sup>1</sup>{/if}
-                </td>
-                <td class="text-center">{'I'.repeat(f.fach.Aufgabenfeld)}</td>
-                <td class="text-center">{f.KursartAllg || 'GK'}</td>
-                <td class="text-center">{punkte2note(f.P12_1) || '–'}</td>
-                <td class="text-center">{fhrFach(s, f, '2_1') || '–'}</td>
-                <td class="text-center">{punkte2note(f.P12_2) || '–'}</td>
-                <td class="text-center">{fhrFach(s, f, '2_2') || '–'}</td>
-                <td class="text-center">{punkte2note(f.P13_1) || '–'}</td>
-                <td class="text-center">{fhrFach(s, f, '3_1') || '–'}</td>
-                <td class="text-center">{punkte2note(f.P13_2) || '–'}</td>
-                <td class="text-center">{fhrFach(s, f, '3_2') || '–'}</td>
-              </tr>
-            {/each}
-          </table>
-          <Voffset v="0.5"/>
-          <b>Bemerkungen:
-          <br></b> {@html bemerkungen(hj)}
-          <Voffset v="1"/>
-          Die Kurse des letzten Halbjahres gelten als {zeige_Kurse_abgeschlossen ? '':'nicht'} abgeschlossen.
-          <button class="vbutton no-print" on:click="{() => zeige_Kurse_abgeschlossen = !zeige_Kurse_abgeschlossen}">
-            Kurse abgeschlossen: {zeige_Kurse_abgeschlossen ? 'Ja' : 'Nein'}
-          </button>
-          {#if zeige_FHR}
-            <Voffset v="2"/>
-            Dieses Zeugnis gilt in Verbindung mit dem Nachweis über eine
-            abgeschlossene Berufsausbildung oder ein einjähriges gelenktes
-            Praktikum gemäß der Praktikum - Ausbildungsordnung vom 11.12.2006
-            (BASS 13 -31 Nr.1) als Nachweis der Fachhochschulreife. Es
-            berechtigt zum Studium an einer Fachhochschule des Landes
-            Nordrhein-Westfalen. Dieses Zeugnis gilt auch als Nachweis des
-            schulischen Teils der Fachhochschulreife in den Ländern
-            Baden-Württemberg, Berlin, Brandenburg, Bremen, Hamburg, Hessen,
-            Mecklenburg-Vorpommern, Niedersachsen, Rheinland-Pfalz, Saarland,
-            Sachsen-Anhalt, Schleswig-Holstein und Thüringen.
-          {/if}
-          <button class="vbutton no-print" on:click="{() => zeige_FHR = !zeige_FHR}">
-            FHR abgeschlossen: {zeige_FHR ? 'Ja' : 'Nein'}
-          </button>
-          <Voffset v="2"/>
-          <table class="table-noten">
-            <tr>
-              <td>Durchschnittsnote:</td>
-              <td class="td-fach-note"><span>{s.fhr_abschluss && s.fhr_abschluss.Note}</span></td>
-              <td>in&nbsp;Worten:</td>
-              <td class="td-fach-note"><span>{@html s.fhr_abschluss && s.fhr_abschluss.Note && noteInWorten(s.fhr_abschluss.Note)}</span></td>
-            </tr>
-          </table>
-        </div>
-        <div class="footer">
-          <div class="flex-grid">
-            <div class="col-2">
-              {schule.Ort}, den {datum(hj.ZeugnisDatum)}
-            </div>
-            <div class="col text-center klein">
-              <Voffset v="3"/>
-              <hr />
-              {schule.SchulleiterVorname} {schule.SchulleiterName}
-              <br />{schule.schulleiter_in}
-            </div>
-            <div class="col text-center klein">
-              <Voffset v="3"/>
-              Siegel
-            </div>
-            <div class="col text-center klein">
-              <Voffset v="3"/>
-              <hr />
-              {hj.lehrer.Vorname} {hj.lehrer.Nachname}<br />{hj.klassenlehrer_in}
-            </div>
-          </div>
-          <Voffset v="2"/>
-          Schulnummer: {schule.SchulNr}
-          <div class="klein">
-            <hr />
-            <sup>1</sup>Der Unterricht in den modernen Fremdsprachen hat auf der nach dem Fach in
-            Klammern angegebenen Niveaustufe des „Europäischen Referenzrahmens für
-            Sprachen: Lernen, Lehren, Beurteilen“ stattgefunden. Sind zwei
-            Referenzniveaus ausgewiesen, ist das niedrigere in vollem Umfang, das höhere
-            in Anteilen erreicht. Bei mindestens ausreichenden Leistungen (5 Punkte)
-            wird der sprachliche Kompetenzerwerb auf diesem Niveau bescheinigt.
-            <Voffset v=".5"/>
-            <table>
-              <tr>
-                <td rowspan="4" valign="top" width="5px" ><sup>2</sup> </td>
-                <td width="10px">I</td>
-                <td>= sprachlich literarisches Aufgabenfeld</td>
-                <td rowspan="4" valign="top" width="5px" ><sup>3</sup> </td>
-                <td width="10px">LK</td>
-                <td>= Leistungskurs</td>
-              </tr>
-              <tr>
-                <td>II</td>
-                <td>= gesellschaftswissenschaftliches Aufgabenfeld</td>
-                <td width="10px">GK</td>
-                <td>= Grundkurs</td>
-              </tr>
-              <tr>
-                <td>III</td>
-                <td>= mathematisch-naturwissenschaftlich-technisches Aufgabenfeld</td>
-              </tr>
-            </table>
-            <sup>4</sup> Für die Umsetzung von Noten in Punkte gilt:
-            <table class="table table-bordered table-eng" width="80%">
-              <tr>
-                <td width="5%"></td>
-                {#each ['sehr gut', 'gut', 'befriedigend', 'ausreichend', 'mangelhaft', 'ungenügend'] as n}
-                  <td class="text-center" width="10%">{n}</td>
-                {/each}
-              </tr>
-              <tr>
-                <td>Noten</td>
-                {#each [1,2,3,4,5] as i}
-                  <td class="text-center">
-                    <div class="flex-grid">
-                      <div class="col">+</div>
-                      <div class="col">{i}</div>
-                      <div class="col">-</div>
-                    </div>
-                  </td>
-                {/each}
-                <td class="text-center">6</td>
-              </tr>
-              <tr>
-                <td>Punkte</td>
-                {#each [[15,14,13],[12,11,10],['09','08','07'],['06','05','04'],['03','02','01']] as ii}
-                  <td class="text-center">
-                    <div class="flex-grid">
-                      {#each ii as i}
-                        <div class="col">{i}</div>
-                      {/each}
-                    </div>
-                  </td>
-                {/each}
-                <td class="text-center">00</td>
-              </tr>
-            </table>
-            <Voffset v=".5"/>
-            <table>
-              <tr>
-                <td width="3%">E1</td>
-                <td width="40%">= Mit besonderem Erfolg teilgenommen</td>
-                <td width="3%">E2</td>
-                <td width="30%">= Mit Erfolg teilgenommen</td>
-                <td width="3%">E3</td>
-                <td width="15%">= Teilgenommen</td>
-              </tr>
-            </table>
-            Die Punkte in Klammern sind nicht in die Durchschnittsnote eingerechnet worden.
-          </div>
-        </div>
-      </div>
-    <div class="page grid" orientation="portrait" size="A4">
-        <div class="footer klein">
-        <hr>
-          Dem Zeugnis liegen zugrunde:<br>
-          Die Verordnung über die Ausbildung und Prüfung
-          in den Bildungsgängen des Berufskollegs (Ausbildungs- und Prüfungsordnung
-          Berufskolleg, APO-BK) vom 26. Mai 1999 (SGV. NRW. 223/BASS 13 – 33 Nr. 1.1).
-          <Voffset v=".5"/>
-          Rechtsbehelfsbelehrung:<br>
-          Gegen dieses Zeugnis kann innerhalb eines Monats
-          nach Bekanntgabe des Zeugnisses Widerspruch eingelegt werden. Der Widerspruch
-          ist beim {schule.Bezeichnung2}, {schule.Strasse}, {schule.PLZ} {schule.Ort},
-          schriftlich oder zur Niederschrift zu erheben. <br />Falls die Frist durch
-          das Verschulden einer/eines Bevollmächtigten versäumt wird, wird dies
-          Verschulden der Widerspruchsführerin/dem Widerspruchsführer zugerechnet.
-        </div>
-      </div>
-  {/each}
-{/each}
-
-<script>
-  export const kommentar = `
-  *Achtung* die FHR wird nicht automatisch vergeben, Voraussetzungen beachten
-- [§13 zu AGZ 12, 13,](https://bass.schul-welt.de/3129.htm#pgfId-1289625)
-- [VV 13.4 zu Absatz 4](https://bass.schul-welt.de/3129.htm#pgfId-3910131)
-- [FHR bei Abgängern](https://bass.schul-welt.de/3129.htm#13-33nr1.1p13a_AnlageD)
-- [Sprachniveaus](https://bass.schul-welt.de/3129.htm#pgfId-3910826)
-- [AGZ D35](https://bass.schul-welt.de/3129.htm#AnlageD35)
-- [Kurse abgeschlossen? Bemerkung](https://bass.schul-welt.de/3129.htm#pgfId-3910135)
-  `
-  import { datum, versetzungsvermerk, volljaehrigBei, bemerkungen, bg, punkte2note, noteInWorten, fremdsprache }  from './helfer'
-
-  import Seitenlogo from './partials/Seitenlogo.html'
-  import Pageheader from './partials/Pageheader.html'
-  import Voffset from './partials/Voffset.html'
-
-  export let schueler, schule, privat, jahr, abschnitt
-  let zeige_FHR = false, zeige_Kurse_abgeschlossen = false
-  const aktHalbjahrFuer = s => [s.abschnitte.find(a => a.Jahr === jahr && a.Abschnitt === abschnitt)]
-
-  const fhrFach = (s, fach, id) => {
-    const pid = 'P1' + id
-    if (!fach[pid]) return
-    const fach2 = s.fhr_abschluss_faecher.find(f => f.Fach_ID === fach.Fach_ID)
-    const rsid = 'RSII_' + id
-    return fach2[rsid] === '+' ? fach[pid] : `(${fach[pid]})`
-  }
-</script>
-
-<style>
-  @import 'css/main.css';
-  @import 'css/a4-portrait.css';
-  .table-bordered {
-    border-collapse: collapse; }
-  .table-bordered td {
-    border: thin solid #ddd;
-    line-height: 1.3rem }
-  .table-eng {
-    margin-bottom: 0;
-  }
-  .table-noten {
-    width: 70%;
-    border: none;
-    border-collapse: collapse;
-    margin-bottom: 1rem;
-  }
-  .td-fach-note {
-    padding-bottom: .2rem;
-    padding-top: .2rem;
-    width: 12rem;
-  }
-  .td-fach-note span {
-    background-color: #dcdcdc !important;
-    text-align: center;
-    width: 10rem;
-    display: block;
-    margin: 0 auto;
-  }
-</style>

+ 0 - 278
AHR AGZ.html

@@ -1,278 +0,0 @@
-{#each schueler as s (s.ID)}
-  {#each aktHalbjahrFuer(s) as hj (hj.ID)}
-    <div class="page grid" orientation="landscape" size="A3">
-      <div class="header">
-        <Seitenlogo logo="{privat.traegerLogo}"/>
-        <Pageheader art="daten/agz.svg" logo="{privat.logo}" untertitel="{privat.untertitel}"/>
-      </div>
-      <div class="main-grid">
-        <div class="main-left">
-          <div style="font-size: 12pt; line-height: 1.5em">Abgangszeugnis gemäß §13 APO-BK, Anlage D</div>
-          <div style="font-size: 11pt; line-height: 1.2em">Berufliches Gymnasium, {bg(s, 'Bereich')}</div>
-          <Voffset v="0.5"/>
-          {s.anrede} <b>{s.Vorname} {s.Zusatz || ''} {s.Name}</b>, geboren am {datum(s.Geburtsdatum)} in {s.Geburtsort},
-          <br />hat vom {datum(s.Aufnahmedatum)} bis zum {datum(s.Entlassdatum)} den <b>Bildungsgang {bg(s, 'Zeugniskopf')}</b> besucht.
-          <br>{s.Geschlecht === 3 ? 'Er':'Sie'} war zuletzt {s.schueler_in} im {hj.Abschnitt}. Halbjahr der Jahrgangstufe {hj.Jahrgang+10}.
-          <Voffset v="0.5"/>
-          In der Konferenz am {datum(hj.Konferenzdatum)} sind folgende Leistungen festgestellt worden:
-          <table class="table table-bordered ">
-            <tr>
-              <td>Fach</td>
-              <td>Aufg.-<br>feld<sup>2</sup></td>
-              <td>Kurs-<br>Art<sup>3</sup></td>
-              <td colspan="2" class="text-center">12.1<sup>4</sup></td>
-              <td colspan="2" class="text-center">12.2<sup>4</sup></td>
-              <td colspan="2" class="text-center">13.1<sup>4</sup></td>
-              <td colspan="2" class="text-center">13.2<sup>4</sup></td>
-            </tr>
-            <tr>
-              <td colspan="3"></td>
-              <td class="text-center">Note</td>
-              <td class="text-center">Punkte</td>
-              <td class="text-center">Note</td>
-              <td class="text-center">Punkte</td>
-              <td class="text-center">Note</td>
-              <td class="text-center">Punkte</td>
-              <td class="text-center">Note</td>
-              <td class="text-center">Punkte</td>
-            </tr>
-            {#each s.abi_abschluss_faecher.sort((a, b) => a.FSortierung < b.FSortierung ? -1 : 1) as f}
-              <tr>
-                <td>{f.fach.Bezeichnung}
-                  {#if f.fach.IstSprache === '+'}{fremdsprache(f, s.fachklasse.Kennung)}<sup>1</sup>{/if}
-                </td>
-                <td class="text-center">{'I'.repeat(f.fach.Aufgabenfeld)}</td>
-                <td class="text-center">{f.KursartAllg || 'GK'}</td>
-                <td class="text-center">{punkte2note(f.P12_1) || '–'}</td>
-                <td class="text-center">{fhrFach(s, f, '2_1') || '–'}</td>
-                <td class="text-center">{punkte2note(f.P12_2) || '–'}</td>
-                <td class="text-center">{fhrFach(s, f, '2_2') || '–'}</td>
-                <td class="text-center">{punkte2note(f.P13_1) || '–'}</td>
-                <td class="text-center">{fhrFach(s, f, '3_1') || '–'}</td>
-                <td class="text-center">{punkte2note(f.P13_2) || '–'}</td>
-                <td class="text-center">{fhrFach(s, f, '3_2') || '–'}</td>
-              </tr>
-            {/each}
-          </table>
-          <Voffset v="0.5"/>
-          <b>Bemerkungen:
-          <br></b> {@html bemerkungen(hj)}
-        </div>
-        <div class="main-right">
-          <Voffset v="4"/>
-          Die Kurse des letzten Halbjahres gelten als {zeige_Kurse_abgeschlossen ? '':'nicht'} abgeschlossen.
-          <button class="vbutton no-print" on:click="{() => zeige_Kurse_abgeschlossen = !zeige_Kurse_abgeschlossen}">
-            Kurse abgeschlossen: {zeige_Kurse_abgeschlossen ? 'Ja' : 'Nein'}
-          </button>
-          {#if zeige_FHR}
-            <Voffset v="2"/>
-            Dieses Zeugnis gilt in Verbindung mit dem Nachweis über eine
-            abgeschlossene Berufsausbildung oder ein einjähriges gelenktes
-            Praktikum gemäß der Praktikum - Ausbildungsordnung vom 11.12.2006
-            (BASS 13 -31 Nr.1) als Nachweis der Fachhochschulreife. Es
-            berechtigt zum Studium an einer Fachhochschule des Landes
-            Nordrhein-Westfalen. Dieses Zeugnis gilt auch als Nachweis des
-            schulischen Teils der Fachhochschulreife in den Ländern
-            Baden-Württemberg, Berlin, Brandenburg, Bremen, Hamburg, Hessen,
-            Mecklenburg-Vorpommern, Niedersachsen, Rheinland-Pfalz, Saarland,
-            Sachsen-Anhalt, Schleswig-Holstein und Thüringen.
-            <Voffset v="2"/>
-            <table class="table-noten">
-              <tr>
-                <td>Durchschnittsnote:</td>
-                <td class="td-fach-note"><span>{s.fhr_abschluss && s.fhr_abschluss.Note}</span></td>
-                <td>in&nbsp;Worten:</td>
-                <td class="td-fach-note"><span>{@html s.fhr_abschluss && s.fhr_abschluss.Note && noteInWorten(s.fhr_abschluss.Note)}</span></td>
-              </tr>
-            </table>
-          {/if}
-          <button class="vbutton no-print" on:click="{() => zeige_FHR = !zeige_FHR}">
-            FHR abgeschlossen: {zeige_FHR ? 'Ja' : 'Nein'}
-          </button>
-        </div>
-        <div class="footer-right">
-          <div class="flex-grid">
-            <div class="col-2">
-              {schule.Ort}, den {datum(hj.ZeugnisDatum)}
-            </div>
-            <div class="col text-center klein">
-              <Voffset v="3"/>
-              <hr />
-              {schule.SchulleiterVorname} {schule.SchulleiterName}
-              <br />{schule.schulleiter_in}
-            </div>
-            <div class="col text-center klein">
-              <Voffset v="3"/>
-              Siegel
-            </div>
-            <div class="col text-center klein">
-              <Voffset v="3"/>
-              <hr />
-              {hj.lehrer.Vorname} {hj.lehrer.Nachname}<br />{hj.klassenlehrer_in}
-            </div>
-          </div>
-          <Voffset v="6"/>
-        </div>
-      </div>
-      <div class="footer-grid klein eng">
-        <div class="header">
-          Schulnummer: {schule.SchulNr}
-          <hr />
-          <Voffset v="1"/>
-        </div>
-        <div class="footer-left">
-          <sup>1</sup>Der Unterricht in den modernen Fremdsprachen hat auf der nach dem Fach in
-          Klammern angegebenen Niveaustufe des „Europäischen Referenzrahmens für
-          Sprachen: Lernen, Lehren, Beurteilen“ stattgefunden. Sind zwei
-          Referenzniveaus ausgewiesen, ist das niedrigere in vollem Umfang, das höhere
-          in Anteilen erreicht. Bei mindestens ausreichenden Leistungen (5 Punkte)
-          wird der sprachliche Kompetenzerwerb auf diesem Niveau bescheinigt.
-          <Voffset v=".5"/>
-          <table>
-            <tr>
-              <td rowspan="4" valign="top" width="5px" ><sup>2</sup> </td>
-              <td width="10px">I</td>
-              <td>= sprachlich literarisches Aufgabenfeld</td>
-              <td rowspan="4" valign="top" width="5px" ><sup>3</sup> </td>
-              <td width="10px">LK</td>
-              <td>= Leistungskurs</td>
-            </tr>
-            <tr>
-              <td>II</td>
-              <td>= gesellschaftswissenschaftliches Aufgabenfeld</td>
-              <td width="10px">GK</td>
-              <td>= Grundkurs</td>
-            </tr>
-            <tr>
-              <td>III</td>
-              <td>= mathematisch-naturwissenschaftlich-technisches Aufgabenfeld</td>
-            </tr>
-          </table>
-          <sup>4</sup> Für die Umsetzung von Noten in Punkte gilt:
-          <table class="table table-bordered table-eng" width="80%">
-            <tr>
-              <td width="5%"></td>
-              {#each ['sehr gut', 'gut', 'befriedigend', 'ausreichend', 'mangelhaft', 'ungenügend'] as n}
-                <td class="text-center" width="10%">{n}</td>
-              {/each}
-            </tr>
-            <tr>
-              <td>Noten</td>
-              {#each [1,2,3,4,5] as i}
-                <td class="text-center">
-                  <div class="flex-grid">
-                    <div class="col">+</div>
-                    <div class="col">{i}</div>
-                    <div class="col">-</div>
-                  </div>
-                </td>
-              {/each}
-              <td class="text-center">6</td>
-            </tr>
-            <tr>
-              <td>Punkte</td>
-              {#each [[15,14,13],[12,11,10],['09','08','07'],['06','05','04'],['03','02','01']] as ii}
-                <td class="text-center">
-                  <div class="flex-grid">
-                    {#each ii as i}
-                      <div class="col">{i}</div>
-                    {/each}
-                  </div>
-                </td>
-              {/each}
-              <td class="text-center">00</td>
-            </tr>
-          </table>
-          <Voffset v=".5"/>
-          <table>
-            <tr>
-              <td width="3%">E1</td>
-              <td width="40%">= Mit besonderem Erfolg teilgenommen</td>
-              <td width="3%">E2</td>
-              <td width="30%">= Mit Erfolg teilgenommen</td>
-              <td width="3%">E3</td>
-              <td width="15%">= Teilgenommen</td>
-            </tr>
-          </table>
-          Die Punkte in Klammern sind nicht in die Durchschnittsnote eingerechnet worden.
-        </div>
-        <div class="footer-right">
-          Dem Zeugnis liegen zugrunde:<br>
-          Die Verordnung über die Ausbildung und Prüfung
-          in den Bildungsgängen des Berufskollegs (Ausbildungs- und Prüfungsordnung
-          Berufskolleg, APO-BK) vom 26. Mai 1999 (SGV. NRW. 223/BASS 13 – 33 Nr. 1.1).
-          <Voffset v=".5"/>
-          Rechtsbehelfsbelehrung:<br>
-          Gegen dieses Zeugnis kann innerhalb eines Monats
-          nach Bekanntgabe des Zeugnisses Widerspruch eingelegt werden. Der Widerspruch
-          ist beim {schule.Bezeichnung2}, {schule.Strasse}, {schule.PLZ} {schule.Ort},
-          schriftlich oder zur Niederschrift zu erheben. <br />Falls die Frist durch
-          das Verschulden einer/eines Bevollmächtigten versäumt wird, wird dies
-          Verschulden der Widerspruchsführerin/dem Widerspruchsführer zugerechnet.
-        </div>
-      </div>
-    </div>
-  {/each}
-{/each}
-
-<script>
-  export const kommentar = `
-  *Achtung* die FHR wird nicht automatisch vergeben, Voraussetzungen beachten
-- [§13 zu AGZ 12, 13,](https://bass.schul-welt.de/3129.htm#pgfId-1289625)
-- [VV 13.4 zu Absatz 4](https://bass.schul-welt.de/3129.htm#pgfId-3910131)
-- [FHR bei Abgängern](https://bass.schul-welt.de/3129.htm#13-33nr1.1p13a_AnlageD)
-- [Sprachniveaus](https://bass.schul-welt.de/3129.htm#pgfId-3910826)
-- [AGZ D35](https://bass.schul-welt.de/3129.htm#AnlageD35)
-- [Kurse abgeschlossen? Bemerkung](https://bass.schul-welt.de/3129.htm#pgfId-3910135)
-  `
-  import { datum, versetzungsvermerk, volljaehrigBei, bemerkungen, bg, punkte2note, noteInWorten, fremdsprache }  from './helfer'
-
-  import Seitenlogo from './partials/Seitenlogo.html'
-  import Pageheader from './partials/Pageheader.html'
-  import Voffset from './partials/Voffset.html'
-
-  export let schueler, schule, privat, jahr, abschnitt
-  let zeige_FHR, zeige_Kurse_abgeschlossen
-  const aktHalbjahrFuer = s => [s.abschnitte.find(a => a.Jahr === jahr && a.Abschnitt === abschnitt)]
-
-  const fhrFach = (s, fach, id) => {
-    const pid = 'P1' + id
-    if (!fach[pid]) return
-    const fach2 = s.fhr_abschluss_faecher.find(f => f.Fach_ID === fach.Fach_ID)
-    const rsid = 'RSII_' + id
-    return fach2[rsid] === '+' ? fach[pid] : `(${fach[pid]})`
-  }
-</script>
-
-<style>
-  @import 'css/main.css';
-  @import 'css/a3-landscape.css';
-  .table-bordered {
-    border-collapse: collapse;
-  }
-  .table-bordered td {
-    border: thin solid #ddd;
-    line-height: 1.5rem;
-  }
-  .table-eng {
-    margin-bottom: 0;
-  }
-  .table-noten {
-    width: 70%;
-    border: none;
-    border-collapse: collapse;
-    margin-bottom: 1rem;
-  }
-  .td-fach-note {
-    padding-bottom: .2rem;
-    padding-top: .2rem;
-    width: 12rem;
-  }
-  .td-fach-note span {
-    background-color: #dcdcdc !important;
-    text-align: center;
-    width: 10rem;
-    display: block;
-    margin: 0 auto;
-  }
-</style>

+ 0 - 129
AHR ASZ BA.html

@@ -1,129 +0,0 @@
-{#each schueler as s (s.ID)}
-  {#each aktHalbjahrFuer(s) as hj (hj.ID)}
-    <div class="page grid" orientation="landscape" size="A3">
-      <div class="header">
-        <Seitenlogo logo="{privat.traegerLogo}"/>
-        <Pageheader art="daten/asz.svg" logo="{privat.logo}" untertitel="{privat.untertitel}"/>
-      </div>
-      <div class="main-grid">
-        <div class="main-left">
-          <Voffset v="2"/>
-          <b>{s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name},</b>
-          <br />geboren am {datum(s.Geburtsdatum)} in {s.Geburtsort},
-          <br />war vom {datum(s.Aufnahmedatum)} bis zur Aushändigung des
-          Zeugnisses {s.schueler_in} des Bildungsgangs <br>
-          <b>Erzieherin/Erzieher mit Allgemeiner Hochschulreife</b> im
-          Fachbereich Gesundheit und Soziales mit dem fachlichen Schwerpunkt
-          Pädagogik.
-          <Voffset v="1"/>
-          In der Konferenz am {datum(hj.Konferenzdatum)} sind folgende Leistungen festgestellt worden:
-          <Voffset v=".5"/>
-          <Noten
-            noten={hj.noten}
-            faechergruppenIds={[10, 20, 30, 1600]}
-            fachGliederungen={s.fachklasse.fach_gliederungen}
-            fachklasse={s.fachklasse.Kennung}
-            gruppenbezeichnungNeu={gruppenbezeichnungNeu}
-          ></Noten>
-          <hr />
-          <b>Bemerkungen</b>
-          <br />{@html bemerkungen(hj)}
-        </div>
-        <div class="main-right">
-          <Voffset v="2"/>
-          {s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name} hat die staatliche
-          Berufsabschlussprüfung für Erzieherinnen und Erzieher<br>
-          am {hj.noten.find(f => f.fach.FachKrz === 'KO').Lernentw}
-          bestanden und ist berechtigt, die Berufsbezeichnung
-          <Voffset v="1"/>
-          <h6 class="text-center">{s.Geschlecht === 3 ? 'Staatlich anerkannter Erzieher' : 'Staatlich anerkannte Erzieherin'}</h6>
-          zu führen.
-          <Voffset v="1"/>
-          Der Abschluss ist im Deutschen und Europäischen Qualifikationsrahmen dem Niveau {s.fachklasse.DQR_Niveau} zugeordnet.
-          <Voffset v="9"/>
-          <div class="flex-grid">
-            <div class="col">
-              <Voffset v="-1"/>
-              {schule.Ort}, den {datum(hj.ZeugnisDatum)}
-              <Voffset v="7"/>
-              <div class="text-center klein">Siegel</div>
-            </div>
-            <div class="col">
-              <hr />
-              <div class="text-center klein">
-                {schule.SchulleiterVorname} {schule.SchulleiterName} – Vorsitzende{schule.SchulleiterGeschlecht === 3 ? 'r':''} des allgemeinen
-                <br />Prüfungsausschusses
-              </div>
-              <Voffset v="6"/>
-              <hr />
-              <div class="text-center klein">
-                {schule.SchulleiterVorname} {schule.SchulleiterName} <br />{schule.schulleiter_in}
-              </div>
-            </div>
-            <div class="col"></div>
-          </div>
-        </div>
-      </div>
-      <div class="footer-grid klein eng">
-        <div class="header">
-          Schulnummer: {schule.SchulNr}
-          <hr />
-          <Voffset v="1"/>
-        </div>
-        <div class="footer-left">
-          Notenstufen gemäß § 48 SchulG: 1 = sehr gut, 2 = gut, 3 = befriedigend, 4 = ausreichend, 5 = mangelhaft, 6 = ungenügend
-          <Voffset v=".5"/>
-          <sup>1</sup>Der Unterricht in den modernen Fremdsprachen hat auf der nach dem Fach in
-          Klammern angegebenen Niveaustufe des „Europäischen Referenzrahmens für
-          Sprachen: Lernen, Lehren, Beurteilen“ stattgefunden. Sind zwei
-          Referenzniveaus ausgewiesen, ist das niedrigere in vollem Umfang, das höhere
-          in Anteilen erreicht. Bei mindestens ausreichenden Leistungen wird der
-          sprachliche Kompetenzerwerb auf diesem Niveau bescheinigt.
-        </div>
-        <Voffset v=".5"/>
-        <div class="footer-right">
-          Dem Zeugnis liegen zugrunde:
-          <ul class="list-unstyled dashes">
-            <li>
-              Die Verordnung über die Ausbildung und Prüfung in den Bildungsgängen
-              des Berufskollegs (Ausbildungs- und Prüfungsordnung Berufskolleg,
-              APO-BK) vom 26. Mai 1999 (SGV. NRW. 223/BASS 13 – 33 Nr. 1.1).
-            </li>
-            <li>
-              Die Vereinbarung über Fachschulen (Beschluss der Kultusministerkonferenz
-              vom 07. November 2002 in der jeweils geltenden Fassung).
-            </li>
-          </ul>
-          <Voffset v=".5"/>
-          Rechtsbehelfsbelehrung:
-          <br>Gegen dieses Zeugnis kann innerhalb eines Monats
-          nach Bekanntgabe des Zeugnisses Widerspruch eingelegt werden. Der Widerspruch
-          ist beim {schule.Bezeichnung2}, {schule.Strasse}, {schule.PLZ} {schule.Ort},
-          schriftlich oder zur Niederschrift zu erheben. <br />Falls die Frist durch
-          das Verschulden einer/eines Bevollmächtigten versäumt wird, wird dies
-          Verschulden der Widerspruchsführerin/dem Widerspruchsführer zugerechnet.
-        </div>
-      </div>
-    </div>
-  {/each}
-{/each}
-
-<script>
-  export const kommentar = `
-[Anlage D 48](https://bass.schul-welt.de/anlagen/3129-50.pdf)
-Die *Fächer* BL und BP Gesamt sind in einer anderen Fächergruppe als das Kolloqium und werden auf dem Zeugnis ignoriert.
-  `
-  import { datum, bemerkungen, bg, note }  from './helfer'
-  import Seitenlogo from './partials/Seitenlogo.html'
-  import Pageheader from './partials/Pageheader.html'
-  import Voffset from './partials/Voffset.html'
-  import Noten from './partials/Noten.html'
-  export let schueler, schule, privat, jahr, abschnitt
-  let gruppenbezeichnungNeu = {1600: 'Fachpraktische Prüfung'}
-  const aktHalbjahrFuer = s => s.abschnitte.filter(a => a.Jahr === jahr && a.Abschnitt === abschnitt)
-</script>
-
-<style>
-  @import 'css/main.css';
-  @import 'css/a3-landscape.css';
-</style>

+ 0 - 401
AHR ASZ.html

@@ -1,401 +0,0 @@
-{#each schueler as s (s.ID)}
-  {#each s.abschnitte.filter(aktHalbjahr) as hj (hj.ID)}
-    <div class="page grid" orientation="landscape" size="A3">
-      <div class="main-grid">
-        <div class="main-left grid">
-          <div class="main">
-            <Voffset v="2"/>
-            4. Seite des Zeugnisses der Allgemeinen Hochschulreife für {s.Vorname} {s.Zusatz || ''} {s.Name}
-            <Voffset v="2"/>
-            {#if s.abi_abschluss.KlLatinum === '+' || s.abi_abschluss.Latinum === '+'}
-              Dieses Zeugnis schließt das Latinum (Nachweis von
-              Lateinkenntnissen gemäß Vereinbarung der
-              Kultusministerkonferenz vom 22. September 2005) ein.
-              <Voffset v="2"/>
-            {:else if s.abi_abschluss.Graecum === '+'}
-              <Voffset v="2"/>
-              Dieses Zeugnis schließt das Graecum (Nachweis von
-              Griechischkenntnissen gemäß Vereinbarung der
-              Kultusministerkonferenz vom 22. September 2005) ein.
-            {:else if s.abi_abschluss.Hebraicum === '+'}
-              Dieses Zeugnis schließt das Hebraicum ein.
-              <Voffset v="2"/>
-            {/if}
-            <b>Bemerkungen</b>
-            <br />{@html bemerkungen(hj)}
-            <Voffset v="2"/>
-            {s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name} hat die
-            Abiturprüfung bestanden und damit die Berechtigung zum Studium an
-            einer Hochschule in der Bundesrepublik Deutschland erworben. Der
-            Abschluss ist im Deutschen und Europäischen Qualifikationsrahmen
-            dem Niveau 4 zugeordnet.
-          </div>
-          <div class="footer">
-            <div class="flex-grid">
-              <div class="col-2">
-                <Voffset v="1"/>
-                {schule.Ort}, den {datum(hj.ZeugnisDatum)}
-              </div>
-              <div class="col"></div>
-              <div class="col-2 text-center klein">
-                <Voffset v="3"/>
-                <hr />
-                {s.fachklasse.Ebene2Klartext}
-                <br>Bildungsgangleitung
-              </div>
-            </div>
-            <Voffset v="2"/>
-            <div class="flex-grid">
-              <div class="col text-center klein">
-                Siegel
-              </div>
-            </div>
-            <Voffset v="2"/>
-            <div class="flex-grid">
-              <div class="col-2 text-center klein">
-                <Voffset v="3"/>
-                <hr />
-                {schule.SchulleiterVorname} {schule.SchulleiterName} <br />
-                Vorsitzender des allgemeinen Prüfungsausschusses
-              </div>
-              <div class="col"></div>
-              <div class="col-2 text-center klein">
-                <Voffset v="3"/>
-                <hr />
-                {schule.SchulleiterVorname} {schule.SchulleiterName} <br />{schule.schulleiter_in}
-              </div>
-            </div>
-            <Voffset v="2"/>
-            <div class="klein eng">
-              <b>Rechtsbehelfsbelehrung:</b>
-              <Voffset v="0.5"/>
-              Gegen die Kursabschlussnoten der Jahrgangsstufe 13.2 und die
-              Leistungen in der Abiturprüfung sowie die Berechnung der
-              Gesamtqualifikation einschließlich der Durchschnittsnote kann
-              innerhalb eines Monats nach Bekanntgabe des Zeugnisses
-              Widerspruch erhoben werden. Der Widerspruch ist beim
-              {schule.Bezeichnung2}, {schule.Strasse}, {schule.PLZ}
-              {schule.Ort}, schriftlich oder zur Niederschrift zu erheben.
-              Falls die Frist durch das Verschulden einer/eines
-              Bevollmächtigten versäumt wird, wird dieses Verschulden der
-              Widerspruchsführerin/dem Widerspruchsführer zugerechnet.
-              <Voffset v="2"/>
-              <div class="schulnummer">
-                Schulnummer: {schule.SchulNr}
-              </div>
-            </div>
-          </div>
-        </div>
-        <div class="main-right grid">
-          <div class="header">
-            <Pageheader hr={false} logo="{privat.logo}" untertitel="{privat.untertitel}"/>
-          </div>
-          <div class="main">
-            <Voffset v="3"/>
-            <h4 class="text-center">Zeugnis<br />der Allgemeinen Hochschulreife</h4>
-            <Voffset v="10"/>
-            <div class="text-center" style="font-size: 1.3rem">
-              <b>{s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name},</b>
-              <div class="voffset-2"></div>
-              <div>
-                geboren am {datum(s.Geburtsdatum)} in {s.Geburtsort},
-              </div>
-              <div>
-                wohnhaft in {s.OrtAbk},
-              </div>
-              <div>
-                hat sich der Abiturprüfung im Bildungsgang
-              </div>
-              <div>{bg(s, 'Bereich')}</div>
-              <div>unterzogen.</div>
-            </div>
-          </div>
-          <div class="footer klein eng">
-            <div class="sl"><Seitenlogo logo="{privat.traegerLogo}"/></div>
-            Dem Zeugnis liegen zugrunde:
-            <ul class="list-unstyled dashes">
-              <li>
-              die Vereinbarung zur Gestaltung der gymnasialen Oberstufe und
-              der Abiturprüfung (Beschluss der Kultusministerkonferenz vom
-              7. Juli 1972 in der jeweils geltenden Fassung)
-              </li>
-              <li>
-              die Bildungsstandards für die Allgemeine Hochschulreife oder
-              die Vereinbarung über die einheitlichen Prüfungsanforderungen
-              in der Abiturprüfung (Beschlüsse der Kultusministerkonferenz
-              in der jeweils geltenden Fassung)
-              </li>
-              <li>
-              die Verordnung über die Ausbildung und Prüfung in den
-              Bildungsgängen des Berufskollegs (Ausbildungs- und
-              Prüfungsordnung Berufskolleg – APO-BK) vom 26. Mai 1999 (SGV.
-              NRW. 223/BASS 13–33 Nr. 1.1)
-              </li>
-            </ul>
-          </div>
-        </div>
-      </div>
-    </div>
-    <!-- Innenteil -->
-    <div class="page grid" orientation="landscape" size="A3">
-      <div class="main-grid">
-        <div class="main-left grid">
-          <div class="main">
-            <Voffset v="2"/>
-            2. Seite des Zeugnisses der Allgemeinen Hochschulreife für {s.Vorname} {s.Zusatz || ''} {s.Name}
-            <Voffset v="2"/>
-            <b>Block I: Ergebnisse in der Qualifikationsphase</b>
-            <div class="klein">
-              (Die Bewertungen von Halbjahresergebnissen, die nicht in
-              die Gesamtqualifikation eingehen, sind in Klammern gesetzt. Es
-              müssen 32 bis 40 Halbjahresergebnisse eingebracht werden.)
-            </div>
-            <table class="table table-bordered" width="100%">
-              <tr>
-                <td>Fach<sup>1</sup></td>
-                <td colspan="4">Bewertung<sup>2</sup>
-                <br />Halbjahresergebnisse in einfacher Wertung</td>
-              </tr>
-              <tr>
-                <td colspan="1"></td>
-                <td>1. Halbjahr</td>
-                <td>2. Halbjahr</td>
-                <td>3. Halbjahr</td>
-                <td>4. Halbjahr</td>
-              </tr>
-              {#each ['Sprachlich-literarisch-künstlerisches Aufgabenfeld',
-                      'Gesellschaftswissenschaftliches Aufgabenfeld',
-                      'Mathematisch-naturwissenschaftlich-technisches Aufgabenfeld'] as aufgabenfeld,i}
-                <tr>
-                  <td colspan="5">{aufgabenfeld}</td>
-                </tr>
-                {#each s.abi_abschluss_faecher.filter(f => f.fach.Aufgabenfeld === (i+1).toString()) as f}
-                  <tr>
-                    <td>{f.fach.Bezeichnung} {['1', '2'].includes(f.AbiFach) ? '(eA)' : ''}</td>
-                    <td class="text-center">{f.R12_1 === '-' ? `(${f.P12_1 || '–'})` : f.P12_1}</td>
-                    <td class="text-center">{f.R12_2 === '-' ? `(${f.P12_2 || '–'})` : f.P12_2}</td>
-                    <td class="text-center">{f.R13_1 === '-' ? `(${f.P13_1 || '–'})` : f.P13_1}</td>
-                    <td class="text-center">{f.R13_2 === '-' ? `(${f.P13_2 || '–'})` : f.P13_2}</td>
-                  </tr>
-                {/each}
-              {/each}
-              <tr>
-                <td colspan="5">&nbsp;</td>
-              </tr>
-              {#each ['RE', 'SP'] as fach,i}
-                {#each s.abi_abschluss_faecher.filter(f => f.FachKrz === fach) as f}
-                  <tr>
-                    <td>{f.fach.Bezeichnung}</td>
-                    <td class="text-center">{f.R12_1 === '-' ? `(${f.P12_1 || '–'})` : f.P12_1}</td>
-                    <td class="text-center">{f.R12_2 === '-' ? `(${f.P12_2 || '–'})` : f.P12_2}</td>
-                    <td class="text-center">{f.R13_1 === '-' ? `(${f.P13_1 || '–'})` : f.P13_1}</td>
-                    <td class="text-center">{f.R13_2 === '-' ? `(${f.P13_2 || '–'})` : f.P13_2}</td>
-                  </tr>
-                {/each}
-              {/each}
-            </table>
-          </div>
-          <div class="footer">
-            <div class="klein eng">
-              Schulnummer: {schule.SchulNr}
-              <hr />
-              <sup>1</sup>Leistungskursfächer werden mit dem Klammerzusatz
-              „eA“ (erhöhtes Anforderungsniveau) gekennzeichnet. Grundkurse
-              bleiben ohne besondere Kennzeichnung.
-              <Voffset v="0.5"/>
-              <sup>2</sup> Für die Umsetzung der Noten in Punkte gilt:
-              <table class="table table-bordered table-eng" width="100%">
-                <tr>
-                  <td width="5%"></td>
-                  {#each ['sehr gut', 'gut', 'befriedigend', 'ausreichend', 'mangelhaft', 'ungenügend'] as n}
-                    <td class="text-center" width="10%">{n}</td>
-                  {/each}
-                </tr>
-                <tr>
-                  <td>Noten</td>
-                  {#each [1,2,3,4,5] as i}
-                    <td class="text-center">
-                      <div class="flex-grid">
-                        <div class="col">+</div>
-                        <div class="col">{i}</div>
-                        <div class="col">-</div>
-                      </div>
-                    </td>
-                  {/each}
-                  <td class="text-center">6</td>
-                </tr>
-                <tr>
-                  <td>Punkte</td>
-                  {#each [[15,14,13],[12,11,10],['09','08','07'],['06','05','04'],['03','02','01']] as ii}
-                    <td class="text-center">
-                      <div class="flex-grid">
-                        {#each ii as i}
-                          <div class="col">{i}</div>
-                        {/each}
-                      </div>
-                    </td>
-                  {/each}
-                  <td class="text-center">00</td>
-                </tr>
-              </table>
-            </div>
-          </div>
-        </div>
-        <div class="main-right grid">
-          <div class="main">
-            <Voffset v="2"/>
-            3. Seite des Zeugnisses der Allgemeinen Hochschulreife für {s.Vorname} {s.Zusatz || ''} {s.Name}
-            <Voffset v="2"/>
-            <b>Block II: Ergebnisse in der Abiturprüfung</b>
-            <Voffset v="0.5"/>
-            <table class="table table-bordered" width="100%">
-              <tr>
-                <td rowspan="2">Prüfungsfach<sup>1</sup></td>
-                <td colspan="2">Ergebnisse<br />in einfacher Wertung</td>
-                <td class="text-center" rowspan="2">Gesamtergebnis<sup>2</sup></td>
-              </tr>
-              <tr>
-                <td class="text-center">schriftlich</td>
-                <td class="text-center">mündlich</td>
-              </tr>
-              {#each s.abi_abschluss_faecher.filter(f => ['1', '2', '3'].includes(f.AbiFach)).sort((a,b) => a.AbiFach-b.AbiFach) as f}
-                <tr>
-                  <td>{f.fach.Bezeichnung} {['1', '2'].includes(f.AbiFach) ? '(eA)' : ''}</td>
-                  <td class="text-center">{f.AbiPruefErgebnis || '–'}</td>
-                  <td class="text-center">{f.MdlPruefErgebnis || '–'}</td>
-                  <td class="text-center">{f.AbiErgebnis}</td>
-                </tr>
-              {/each}
-              {#each s.abi_abschluss_faecher.filter(f => f.AbiFach === '4') as f}
-                <tr>
-                  <td>{f.fach.Bezeichnung}</td>
-                  <td class="text-center">–</td>
-                  <td class="text-center">{f.AbiPruefErgebnis}</td>
-                  <td class="text-center">{f.AbiErgebnis}</td>
-                </tr>
-              {/each}
-            </table>
-            <Voffset v="2"/>
-            <b>Berechnung der Gesamtqualifikation und der Durchschnittsnote</b>
-            <Voffset v="1"/>
-            Block I:
-            <div class="flex-grid">
-              <div class="col-2">
-                Punktsumme aus den Halbjahresergebnissen<sup>3</sup>
-                <br />Berechnung gemäß Formel
-                <Voffset v="1"/>
-                <div class="text-center"><img src="daten/abiturformel.png" width="60" alt="Abiformel"/></div>
-              </div>
-              <div class="col text-center"><h5>{s.abi_abschluss.Punktsumme_I}</h5></div>
-              <div class="col">mindestens 200,<br>höchstens 600 Punkte</div>
-            </div>
-            <Voffset v="1"/>
-            <div class="klein">P = Erzielte Punkte in den eingebrachten Fächern<sup>4</sup>
-            <br />S = Anzahl der Schulhalbjahresergebnisse. Doppelt gewichtete Fächer zählen auch hier doppelt</div>
-            <Voffset v="1"/>
-            Block II:
-            <div class="flex-grid">
-              <div class="col-2">
-                Punktsumme aus den Gesamtergebnissen in den Prüfungsfächern in 5-facher Wertung
-              </div>
-              <div class="col text-center"><h5>{s.abi_abschluss.Punktsumme_II}</h5></div>
-              <div class="col">mindestens 100,<br>höchstens 300 Punkte</div>
-            </div>
-            <Voffset v="1"/>
-            <div class="flex-grid">
-              <div class="col-2">Gesamtpunktzahl:</div>
-              <div class="col text-center"><h5>{s.abi_abschluss.GesamtPunktzahl}</h5></div>
-              <div class="col">
-                mindestens 300,<br>höchstens 900 Punkte
-              </div>
-            </div>
-            <Voffset v="1"/>
-            <div class="flex-grid">
-              <div class="col-2">Durchschnittsnote:</div>
-              <div class="col text-center"><h5>{s.abi_abschluss.Note}</h5></div>
-              <div class="col">In Worten: {@html noteInWorten(s.abi_abschluss.Note)}</div>
-            </div>
-            <Voffset v="1"/>
-            <b>Fremdsprachen</b>
-            <Voffset v="1"/>
-            <table class="table table-bordered" width="100%">
-            <tr><td>Fach</td><td>Jahrgangsstufen</td><td>Niveau gemäß GER<sup>5</sup></td></tr>
-              {#each s.sprachenfolgen as sprache}
-                <tr>
-                  <td>{sprache.fach.Bezeichnung}</td>
-                  <td>von {sprache.JAHRGANGVON} bis {sprache.JAHRGANGBIS}</td>
-                  <td>{sprache.Referenzniveau || '–'}</td>
-                </tr>
-              {/each}
-            </table>
-          </div>
-          <div class="footer klein eng">
-            <hr>
-            <sup>1</sup>Leistungskursfächer werden mit dem Klammerzusatz „eA“
-            (erhöhtes Anforderungsniveau) gekennzeichnet.
-            <Voffset v="0.5"/>
-            <sup>2</sup> Die Ergebnisse der schriftlichen und der mündlichen
-            Prüfung sind hierbei im Verhältnis 2:1 gewichtet. Das
-            Gesamtergebnis ist in 5-facher Wertung angegeben; es wurde auf
-            eine ganzzahlige Punktzahl gerundet; dabei wurde ab der Dezimalen
-            5 aufgerundet.
-            <Voffset v="0.5"/>
-            <sup>3</sup> Es müssen mindestens 32 Halbjahresergebnisse
-            eingebracht werden. Die Punktsumme (E) wurde auf eine ganzzahlige
-            Punktzahl gerundet; dabei wurde ab der Dezimalen 5 aufgerundet.
-            <Voffset v="0.5"/>
-            <sup>4</sup> Die Ergebnisse in den Leistungskursfächern werden
-            doppelt gewichtet.
-            <Voffset v="0.5"/>
-            <sup>5</sup> Für die modernen Fremdsprachen schließt das Zeugnis
-            den „Europäischen Referenzrahmen für Sprachen: Lernen, Lehren,
-            Beurteilen“ ein. Sind zwei Referenzniveaus ausgewiesen, ist das
-            niedrigere in vollem Umfang, das höhere in Anteilen erreicht.
-          </div>
-        </div>
-      </div>
-    </div>
-  {/each}
-{/each}
-<script>
-  export const kommentar = `
-[Anlage D 41](https://bass.schul-welt.de/3129.htm#13-33nr11A_D41)
-[§24](https://bass.schul-welt.de/3129.htm#pgfId-1290315)
-Der Name der Bildungsgangleitung wird momentan über die Eingabe in der
-Fachklasse Ebene2 eingegeben.
-`
-  import { datum, bemerkungen, bg, noteInWorten }  from './helfer'
-
-  import Seitenlogo from './partials/Seitenlogo.html'
-  import Pageheader from './partials/Pageheader.html'
-  import Voffset from './partials/Voffset.html'
-  import Fussnote from './partials/Fussnoten.html'
-
-  export let schueler, schule, privat, jahr, abschnitt
-  const aktHalbjahr = (a) => a.Jahr === jahr && a.Abschnitt === abschnitt
-</script>
-
-<style>
-  @import 'css/main.css';
-  @import 'css/a3-landscape.css';
-  .sl {
-    position: relative;
-    bottom: -126px;
-    left: -90px;
-  }
-  /* div {
-    box-sizing: border-box;
-    border: thin solid #ddd;
-  } */
-  .table-bordered {
-    border-collapse: collapse;
-  }
-  .table-bordered tr td {
-    border: thin solid #ddd;
-    padding: 8px;
-    line-height: 1.3rem }
-  .table-eng tr td {
-    margin-bottom: 0;
-    padding: 1px;
-  }
-</style>

+ 0 - 82
AHR Abiturergebnisse.html

@@ -1,82 +0,0 @@
-{#each chunk(schueler, anzahl) as slice, i}
-  <div class="page grid" orientation="landscape" size="A4">
-    <div class="header">
-      <pre>
-        Übersicht der Abiturergebnisse <b>{klasse.Klasse || schueler[0].Klasse}</b> &Tab; Stand: {heute()}
-      </pre>
-    </div>
-    <div class="main">
-      <Voffset v=1/>
-      <table class="table-bordered" width="100%">
-        <tr>
-          <th rowspan="2" width="30px">Nr</th>
-          <th rowspan="2" style="text-align: left;">Name</th>
-          <th colspan="2" width="50px">1. Fach (LK1)</th>
-          <th colspan="2" width="50px">2. Fach (LK2)</th>
-          <th colspan="2" width="50px">3. Fach (GK)</th>
-          <th colspan="2" width="50px">4. Fach (mdl)</th>
-          <th rowspan="2" width="50px">Abitur- note</th>
-          <th rowspan="2" width="70px">Summe Block I</th>
-          <th rowspan="2" width="70px">vorl. Gesamt- summe</th>
-          <th rowspan="2" width="70px">Noten- sprung</th>
-          <th rowspan="2" width="50px">Diff</th>
-          <th rowspan="2" width="70px">mdl Pfl.- Prfg</th>
-          <th rowspan="2" width="70px">mdl Best.- Prfg</th>
-        </tr>
-        <tr>
-          <th>Fach</th><th>Note</th>
-          <th>Fach</th><th>Note</th>
-          <th>Fach</th><th>Note</th>
-        </tr>
-        {#each slice as s, ii}
-          <tr>
-            <td><b>{i*anzahl+ii+1}</b></td>
-            <td style="text-align: left;"><b>{s.Name}, {s.Vorname}</b></td>
-            {#each s.abi_abschluss_faecher.filter(f => ['1', '2', '3', '4'].includes(f.AbiFach)).sort(f => f.AbiFach).reverse() as f}
-              <td>{f.FachKrz}</td>
-              <td>{f.AbiPruefErgebnis}</td>
-            {/each}
-              <td>{s.abi_abschluss.Note}</td>
-              <td>{s.abi_abschluss.Punktsumme_I}</td>
-              <td>{s.abi_abschluss.GesamtPunktzahl}</td>
-              <td>{s.abi_abschluss.Notensprung}</td>
-              <td>{s.abi_abschluss.Notensprung && s.abi_abschluss.GesamtPunktzahl ? (s.abi_abschluss.Notensprung-s.abi_abschluss.GesamtPunktzahl) : ''}</td>
-              <td>{s.abi_abschluss_faecher.find(f=>f.MdlPflichtPruefung === '+') ? 'X' : ''}</td>
-              <td>{s.abi_abschluss_faecher.find(f=>f.MdlBestPruefung === '+') ? 'X' : ''}</td>
-          </tr>
-        {/each}
-      </table>
-    </div>
-    <div class="footer">Seite {i+1}/{Math.ceil(schueler.length/anzahl)}</div>
-  </div>
-{/each}
-
-<script>
-  import { datum, chunk }  from './helfer'
-  import Voffset from './partials/Voffset.html'
-  export let schueler, schule, privat, jahr, abschnitt, klasse
-  const aktHalbjahr = (a) => a.Jahr === jahr && a.Abschnitt === abschnitt
-  const heute = () => new Date().toLocaleDateString('de', {day: '2-digit', month: '2-digit', year: 'numeric'})
-  const anzahl = 25
-</script>
-
-<style>
-  @import 'css/main.css';
-  @import 'css/a4-landscape.css';
-
-  .table-bordered {
-    border-collapse: collapse;
-  }
-  .table-bordered tr th {
-    border: thin solid #ddd;
-  }
-  .table-bordered tr td {
-    border: thin solid #ddd;
-    line-height: 1.3rem;
-    padding: 3px;
-    text-align: center;
-  }
-  .table-eng {
-    margin-bottom: 0;
-  }
-</style>

+ 0 - 57
AHR Bescheinigung BP.html

@@ -1,57 +0,0 @@
-{#each schueler as s}
-  {#each s.abschnitte.filter(aktHalbjahr) as hj (hj.ID)}
-  <div class="page grid" orientation="portrait" size="A4">
-    <Seitenlogo logo="{privat.traegerLogo}"/>
-    <Pageheader logo="{privat.logo}" untertitel="{privat.untertitel}"/>
-    <div class="main">
-      <div class="text-center">
-        <h4>Bescheinigung</h4>
-        <Voffset v="4"/>
-        <b>{s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name}</b>
-        <br />geboren am {datum(s.Geburtsdatum)} in {s.Geburtsort},
-        <br>hat den doppelqualifizierenden Bildungsgang
-        <Voffset v="2"/>
-        <b>Erzieher{s.Geschlecht===3 ? '':'in'}/AHR</b>
-      </div>
-      <Voffset v="2"/>
-      seit dem {datum(s.BeginnBildungsgang)} besucht. {s.Geschlecht===3 ? 'Er':'Sie'} hat die Berechtigung zum Übergang in das Berufspraktikum erworben.
-      <Voffset v="9"/>
-      <div class="flex-grid">
-        <div class="col">
-          {schule.Ort}, den {datum(hj.ZeugnisDatum)}
-        </div>
-        <div class="col">
-          <Voffset v="3"/>
-          <div class="text-center klein">Siegel</div>
-        </div>
-        <div class="col">
-          <Voffset v="6"/>
-          <hr />
-          <div class="text-center klein">
-            {schule.SchulleiterVorname} {schule.SchulleiterName} <br />{schule.schulleiter_in}
-          </div>
-          </div>
-      </div>
-      <Voffset v="2"/>
-    </div>
-    <div class="footer klein" style="text-align:right">
-      Schulnummer: {schule.SchulNr}
-    </div>
-  </div>
-{/each}
-{/each}
-
-<script>
-  export let schueler, schule, privat, jahr, abschnitt
-  import { datum }  from './helfer'
-  import Seitenlogo from './partials/Seitenlogo.html'
-  import Pageheader from './partials/Pageheader.html'
-  import Voffset from './partials/Voffset.html'
-  const aktHalbjahr = (a) => a.Jahr === jahr && a.Abschnitt === abschnitt
-</script>
-
-<style>
-  @import 'css/main.css';
-</style>
-
-

+ 0 - 90
AHR Bescheinigung Bewerbung.html

@@ -1,90 +0,0 @@
-{#each schueler as s}
-  {#each s.abschnitte.filter(aktHalbjahr) as hj (hj.ID)}
-  <div class="page grid" orientation="portrait" size="A4">
-    <Seitenlogo logo="{privat.traegerLogo}"/>
-    <Pageheader logo="{privat.logo}" untertitel="{privat.untertitel}"/>
-    <div class="main">
-      <h4>Bescheinigung für Bewerbungszwecke</h4>
-      <Voffset v="4"/>
-      <b>{s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name}</b>
-      <br />geboren am {datum(s.Geburtsdatum)} in {s.Geburtsort},
-      <br>ist seit dem {datum(s.BeginnBildungsgang)} bis zur Aushändigung des Zeugnisses Schüler{s.Geschlecht===3 ? '':'in'} des Bildungsgangs
-      <b>Erzieherin/AHR, Erzieher/AHR</b>
-      <Voffset v="2"/>
-      Der allgemeine Prüfungsausschuss stellte in seiner Abschlusskonferenz am {datum(hj.Konferenzdatum)} fest:
-      <Voffset v="1"/>
-      {s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name} hat die staatliche <b>Berufsabschlussprüfung</b> am {hj.noten.find(n=>n.fach.FachKrz==='KO').Lernentw} bestanden.
-      <Voffset v="1"/>
-      <table width="80%">
-        <tr>
-          <td>Berufspraktische Leistungen</td>
-          <td class="td-fach-note"><span>{note(hj.noten.find(n => n.fach.FachKrz === 'BLgesamt').NotenKrz)}</span></td>
-        </tr>
-        <tr>
-          <td>Kolloquium</td>
-          <td class="td-fach-note"><span>{note(hj.noten.find(n => n.fach.FachKrz === 'KO').NotenKrz)}</span></td>
-        </tr>
-        <tr>
-          <td><b>Gesamtnote Berufspraxis</b></td>
-          <td class="td-fach-note"><b><span>{note(hj.noten.find(n => n.fach.FachKrz === 'BPgesamt').NotenKrz)}</span></b></td>
-        </tr>
-      </table>
-      <Voffset v="1"/>
-      {s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name} ist mit Abschluss des Berufspraktikums am {datum(hj.ZeugnisDatum)} berechtigt, die Berufsbezeichnung
-      <b>{bg(s, (s.Geschlecht === 3 ? 'Berufsbezeichnung_m' : 'Berufsbezeichnung_w'))}</b> zu führen.
-      <Voffset v="1"/>
-      Der Abschluss ist im Deutschen und Europäischen Qualifikationsrahmen dem Niveau {s.fachklasse.DQR_Niveau} zugeordnet.
-      <Voffset v="9"/>
-      <div class="flex-grid">
-        <div class="col">
-          {schule.Ort}, den {datum(hj.Konferenzdatum)}
-        </div>
-        <div class="col">
-          <Voffset v="3"/>
-          <div class="text-center klein">Siegel</div>
-        </div>
-        <div class="col">
-          <Voffset v="6"/>
-          <hr />
-          <div class="text-center klein">
-            {schule.SchulleiterVorname} {schule.SchulleiterName}
-            <br />Vorsitzender des allgemeinen Prüfungsausschusses
-          </div>
-          </div>
-      </div>
-      <Voffset v="2"/>
-    </div>
-    <div class="footer klein" style="text-align:right">
-      Schulnummer: {schule.SchulNr}
-    </div>
-  </div>
-{/each}
-{/each}
-
-<script>
-  export let schueler, schule, privat, jahr, abschnitt
-  import { datum, bg, note } from './helfer'
-  import Seitenlogo from './partials/Seitenlogo.html'
-  import Pageheader from './partials/Pageheader.html'
-  import Voffset from './partials/Voffset.html'
-  const aktHalbjahr = (a) => a.Jahr === jahr && a.Abschnitt === abschnitt
-</script>
-
-<style>
-  @import 'css/main.css';
-  .td-fach-note {
-    padding-bottom: .2rem;
-    padding-top: .2rem;
-    width: 12rem;
-  }
-  .td-fach-note span {
-    background-color: #dcdcdc !important;
-    text-align: center;
-    width: 10rem;
-    display: block;
-    margin: 0 auto;
-  }
-</style>
-
-
-

+ 0 - 63
AHR Durchschnittspunkte Zulassung.html

@@ -1,63 +0,0 @@
-<div class="page grid" orientation="portrait" size="A4">
-  <div class="header">
-    <pre>
-      Durchschnittspunkte Zulassung der Abiturfächer <b>{klasse.Klasse || schueler[0].Klasse}</b> &Tab; Stand: {heute()}
-    </pre>
-  </div>
-  <div class="main">
-    <Voffset v=1/>
-    <table class="table-bordered" width="100%">
-      <tr>
-        <th></th><th>1. LK</th><th>2. LK</th><th colspan="3">3. Abiturfach</th>
-      </tr>
-      <tr>
-        <th>Name</th><th>{eins()}</th><th>{zwei()}</th>{#each drei() as fach}<th>{fach}</th>{/each}
-      </tr>
-      {#each schueler as s}
-        <tr>
-          <td>{s.Name}, {s.Vorname[0]}.</td>
-          <td class="text-center">{fixed(s.abi_abschluss_faecher.find(f => f.AbiFach === '1').Durchschnitt)}</td>
-          <td class="text-center">{fixed(s.abi_abschluss_faecher.find(f => f.AbiFach === '2').Durchschnitt)}</td>
-          {#each drei() as fach}
-            {#each s.abi_abschluss_faecher.filter(f => f.AbiFach === '3') as s_fach}
-              <td class="text-center">{s_fach.FachKrz === fach ? fixed(s_fach.Durchschnitt) : ''}</td>
-            {/each}
-          {/each}
-        </tr>
-      {/each}
-    </table>
-  </div>
-</div>
-
-<script>
-  export let schueler, klasse
-  import { datum }  from './helfer'
-  import Voffset from './partials/Voffset.html'
-  const heute = () => new Date().toLocaleDateString('de', {day: '2-digit', month: '2-digit', year: 'numeric'})
-  let eins, zwei, drei
-  $: {
-    eins = () => schueler[0].abi_abschluss_faecher.find(f => f.AbiFach === '1').FachKrz
-    zwei = () => schueler[0].abi_abschluss_faecher.find(f => f.AbiFach === '2').FachKrz
-    drei = () => [...new Set(schueler.map(s => s.abi_abschluss_faecher.find(f => f.AbiFach === '3').FachKrz))]
-  }
-  const fixed = n => n ? n.toFixed(2) : null
-</script>
-<style>
-  @import 'css/main.css';
-  @import 'css/a4-portrait.css';
-
-  .table-bordered {
-    border-collapse: collapse;
-  }
-  .table-bordered tr th {
-    border: thin solid #ddd;
-  }
-  .table-bordered tr td {
-    border: thin solid #ddd;
-    line-height: 1.3rem;
-    padding: 3px;
-  }
-  .table-eng {
-    margin-bottom: 0;
-  }
-</style>

+ 0 - 236
AHR Schullaufbahnbescheinigung.html

@@ -1,236 +0,0 @@
-{#each schueler as s (s.ID)}
-  {#each s.abschnitte.filter(aktHalbjahr) as hj (hj.ID)}
-    <div class="page grid" orientation="portrait" size="A4">
-      <div class="header">
-        <Seitenlogo logo="{privat.traegerLogo}"/>
-        <Pageheader logo="{privat.logo}" untertitel="{privat.untertitel}"/>
-      </div>
-      <div class="main">
-        <div style="font-size: 12pt; line-height: 1.5em">Bescheinigung über die Schullaufbahn gemäß §13 APO-BK, Anlage D</div>
-        <div style="font-size: 11pt; line-height: 1.2em">Berufliches Gymnasium, Bereich Gesundheit und Soziales</div>
-        <Voffset v="0.5"/>
-        {s.anrede} <b>{s.Vorname} {s.Zusatz || ''} {s.Name}</b>, geboren am {datum(s.Geburtsdatum)} in {s.Geburtsort},
-        <br />besuchte im Schuljahr {hj.schuljahr} die Jahrgangsstufe {parseInt(hj.ASDJahrgang)+10}.{hj.Abschnitt} im Bildungsgang
-        <br /><b>{bg(s, 'Bereich')}</b>.
-        <Voffset v="0.5"/>
-        In der Konferenz am {datum(hj.Konferenzdatum)} sind folgende Leistungen festgestellt worden:
-        <table class="table table-bordered table-eng">
-          <tr>
-            <td rowspan="2">Fach<sup>1</sup></td>
-            <td rowspan="2" width="20px">Aufg.- feld<sup>2</sup></td>
-            <td rowspan="2" width="20px">Abitur- fach<sup>3</sup></td>
-            {#if s.ASDSchulform === 'D01'}
-              <td rowspan="2" width="20px">Fach der Berufs- abschlussprüfung</td>
-            {/if}
-            <td colspan="4">Leistungen im Halbjahr<sup>4, 5</sup></td>
-          </tr>
-          <tr>
-            <td class="text-center">12.1</td>
-            <td class="text-center">12.2</td>
-            <td class="text-center">13.1</td>
-            <td class="text-center">13.2</td>
-          </tr>
-          {#each s.abi_abschluss_faecher.sort((a, b) => a.FSortierung < b.FSortierung ? -1 : 1) as f}
-            <tr>
-              <td>{f.fach.Zeugnisbez}</td>
-              <td class="text-center">{'I'.repeat(f.fach.Aufgabenfeld)}</td>
-              <td class="text-center">{f.AbiFach || ''}</td>
-              {#if s.ASDSchulform === 'D01'}
-                <td class="text-center">{(parseInt(f.AbiFach) > 0 && parseInt(f.AbiFach) < 4) || f.FachKrz === 'DM' ? '+' : ''}</td>
-              {/if}
-              <td class="text-center">{f.P12_1 || '–'}</td>
-              <td class="text-center">{f.P12_2 || '–'}</td>
-              <td class="text-center">{f.P13_1 || '–'}</td>
-              <td class="text-center">{f.P13_2 || '–'}</td>
-            </tr>
-          {/each}
-        </table>
-        Versäumte Stunden: {parseInt(hj.SumFehlStd) || 0}, davon unentschuldigt: {parseInt(hj.SumFehlStdU) || 0}
-        <Voffset v="0.5"/>
-        Kurse unter 5 Punkten in den Fächern und Jahrgangsstufen:
-        <table>
-          <tr>
-            <td width="7%"><b>12.1:</b></td>
-            <td width="40%">{s.abi_abschluss_faecher.filter(f => parseInt(f.P12_1) < 5 && parseInt(f.P12_1) > 0).map(f => f.fach.Bezeichnung).join(', ') || '- keine -'}</td>
-            {#if hj.Jahrgang === 3 || hj.Jahrgang === 2 && hj.Abschnitt === 2}
-              <td width="7%"><b>12.2:</b></td>
-              <td width="40%">{s.abi_abschluss_faecher.filter(f => parseInt(f.P12_2) < 5 && parseInt(f.P12_2) > 0).map(f => f.fach.Bezeichnung).join(', ') || '- keine -'}</td>
-            {/if}
-          </tr>
-          {#if hj.Jahrgang === 3}
-            <tr>
-              <td><b>13.1:</b></td>
-              <td width="40%">{s.abi_abschluss_faecher.filter(f => parseInt(f.P13_1) < 5 && parseInt(f.P13_1) > 0).map(f => f.fach.Bezeichnung).join(', ') || '- keine -'}</td>
-              {#if hj.Jahrgang === 3 && hj.Abschnitt === 2}
-                <td width="7%"><b>13.2:</b></td>
-                <td width="40%">{s.abi_abschluss_faecher.filter(f => parseInt(f.P13_2) < 5 && parseInt(f.P13_2) > 0).map(f => f.fach.Bezeichnung).join(', ') || '- keine -'}</td>
-              {/if}
-            </tr>
-          {/if}
-        </table>
-        <Voffset v="0.5"/>
-        {#if s.abi_abschluss_faecher.some(f => [f.P12_1, f.P12_2, f.P13_1, f.P13_2].some(ff => parseInt(ff) < 5 && parseInt(ff) > 0))}
-          Ihre Schullaufbahn weist Defizite auf, durch die die Zulassung zur
-          Abiturprüfung
-          {#if s.ASDSchulform === 'D01'}
-            und zur Berufsabschlussprüfung
-          {/if}
-          gefährdet wird.
-        {/if}
-        <Voffset v="0.5"/>
-        <b>Bemerkungen:</b> {@html bemerkungen(hj)}
-      </div>
-      <div class="footer">
-        <div class="flex-grid">
-          <div class="col-2">
-            {schule.Ort}, den {datum(hj.ZeugnisDatum)}
-          </div>
-          <div class="col text-center klein">
-            <Voffset v="3"/>
-            <hr />
-            {schule.SchulleiterVorname} {schule.SchulleiterName}
-            <br />{schule.schulleiter_in}
-          </div>
-          <div class="col text-center klein">
-            <Voffset v="3"/>
-            Siegel
-          </div>
-          <div class="col text-center klein">
-            <Voffset v="3"/>
-            <hr />
-            {hj.lehrer.Vorname} {hj.lehrer.Nachname}<br />{hj.klassenlehrer_in}
-          </div>
-        </div>
-        <div class="flex-grid">
-          <div class="col-2"></div>
-          <div class="col-2">
-            <Voffset v="1"/>
-            Die Kenntnisnahme wird bestätigt:
-          </div>
-          <div class="col">
-            <Voffset v="3"/>
-            <hr />
-            <div class="klein text-center">
-              {volljaehrigBei(s, hj.ZeugnisDatum) ? s.schueler_in : 'Erziehungsberechtigte'}
-            </div>
-          </div>
-        </div>
-        <div class="klein eng">
-          Schulnummer: {schule.SchulNr}
-          <hr />
-          <table>
-            <tr>
-              <td><sup>1</sup> </td>
-              <td colspan="5">In der Reihenfolge der erlassenen Stundentafel</td>
-            </tr>
-            <tr>
-              <td rowspan="4" valign="top"><sup>2</sup> </td>
-              <td>I</td>
-              <td width="70%">= sprachlich literarisches Aufgabenfeld</td>
-              <td align="right" rowspan="4" valign="top"><sup>3</sup> </td>
-              <td>1</td>
-              <td>= erstes Leistungsfach</td>
-            </tr>
-            <tr>
-              <td>II</td>
-              <td>= gesellschaftswissenschaftliches Aufgabenfeld</td>
-              <td>2</td>
-              <td>= zweites Leistungsfach</td>
-            </tr>
-            <tr>
-              <td>III</td>
-              <td>= mathematisch-naturwissenschaftlich-technisches Aufgabenfeld</td>
-              <td>3</td>
-              <td>= drittes Abiturfach</td>
-            </tr>
-            <tr>
-              <td colspan="2"></td>
-              <td>4</td>
-              <td>= viertes Abiturfach</td>
-            </tr>
-          </table>
-          <sup>4</sup> Für die Umsetzung von Noten in Punkte gilt:
-          <table class="table table-bordered table-eng" width="80%">
-            <tr>
-              <td width="5%"></td>
-              {#each ['sehr gut', 'gut', 'befriedigend', 'ausreichend', 'mangelhaft', 'ungenügend'] as n}
-                <td class="text-center" width="10%">{n}</td>
-              {/each}
-            </tr>
-            <tr>
-              <td>Noten</td>
-              {#each [1,2,3,4,5] as i}
-                <td class="text-center">
-                  <div class="flex-grid">
-                    <div class="col">+</div>
-                    <div class="col">{i}</div>
-                    <div class="col">-</div>
-                  </div>
-                </td>
-              {/each}
-              <td class="text-center">6</td>
-            </tr>
-            <tr>
-              <td>Punkte</td>
-              {#each [[15,14,13],[12,11,10],['09','08','07'],['06','05','04'],['03','02','01']] as ii}
-                <td class="text-center">
-                  <div class="flex-grid">
-                    {#each ii as i}
-                      <div class="col">{i}</div>
-                    {/each}
-                  </div>
-                </td>
-              {/each}
-              <td class="text-center">00</td>
-            </tr>
-          </table>
-          <Voffset v=".5"/>
-          <table>
-            <tr>
-              <td width="1%"><sup>5</sup> </td>
-              <td width="3%">E1</td>
-              <td width="40%">= Mit besonderem Erfolg teilgenommen</td>
-              <td width="3%">E2</td>
-              <td width="30%">= Mit Erfolg teilgenommen</td>
-              <td width="3%">E3</td>
-              <td width="15%">= Teilgenommen</td>
-            </tr>
-          </table>
-        </div>
-      </div>
-    </div>
-    <div class="page grid" orientation="portrait" size="A4">
-      <div class="footer grau">
-        <Fussnote {schule}></Fussnote>
-      </div>
-    </div>
-  {/each}
-{/each}
-
-<script>
-  export const kommentar = `
-[Anlage D 33a](https://bass.schul-welt.de/3129.htm#AnlageD33a)
-[VV](https://bass.schul-welt.de/3129.htm#pgfId-3910124)
-  `
-  import { datum, versetzungsvermerk, volljaehrigBei, bemerkungen, bg }  from './helfer'
-
-  import Seitenlogo from './partials/Seitenlogo.html'
-  import Pageheader from './partials/Pageheader.html'
-  import Voffset from './partials/Voffset.html'
-  import Fussnote from './partials/Fussnoten.html'
-
-  export let schueler, schule, privat, jahr, abschnitt
-  const aktHalbjahr = a => a.Jahr === jahr && a.Abschnitt === abschnitt
-</script>
-
-<style>
-  @import 'css/main.css';
-  .table-bordered {
-    border-collapse: collapse; }
-  .table-bordered td {
-    border: thin solid #ddd;
-    line-height: 1.3rem }
-  .table-eng {
-    margin-bottom: 0;
-  }
-</style>

+ 0 - 90
AHR Vornoten Abitur.html

@@ -1,90 +0,0 @@
-{#each chunk(schueler, anzahl) as slice, i}
-  <div class="page grid" orientation="landscape" size="A3">
-    <div class="header">
-      <pre>
-        Konferenzliste APA BK Abitur <b>{klasse.Klasse || schueler[0].Klasse}</b> &Tab; {aktAbschnitt().klassenlehrer_in}: <b>{`${aktAbschnitt().lehrer.Vorname} ${aktAbschnitt().lehrer.Nachname} (${aktAbschnitt().lehrer.Kuerzel})`}</b> &Tab; Stand: {heute()}
-      </pre>
-    </div>
-    <div class="main">
-      {#each slice as s, ii}
-        <b>{(i*anzahl)+ii+1}. {s.Name}, {s.Vorname}</b>
-        <div class="flex-grid">
-          <div class="tabelle">
-            <table>
-              {#each zeilen(faecher(s)) as row}
-                <tr>
-                  {#each row as cell}
-                    <td class:red={parseInt(cell) < 5 && parseInt(cell) >= 0}>{cell}</td>
-                  {/each}
-                </tr>
-              {/each}
-              <tr><td>✎ → </td>
-              {#each s.abi_abschluss_faecher as i}
-              <td></td>
-              {/each}
-              </tr>
-            </table>
-          </div>
-          <div class="bemerkungen">
-            Bermerkungen:
-            {#each '12345' as i}
-              <hr>
-              <Voffset v='1.5' />
-            {/each}
-            Zugelassen: {s.abi_abschluss.Zugelassen === '+' ? "Ja":"Nein"}
-          </div>
-        </div>
-        <Voffset v=1 />
-      {/each}
-    </div>
-    <div class="footer">Seite {i+1}/{Math.ceil(schueler.length/anzahl)}</div>
-  </div>
-{/each}
-
-<script>
-  import { datum, chunk, punkte2note }  from './helfer'
-  import Voffset from './partials/Voffset.html'
-  export let schueler, schule, privat, jahr, abschnitt, klasse
-
-  const anzahl = 5
-  const heute = () => new Date().toLocaleDateString('de', {day: '2-digit', month: '2-digit', year: 'numeric'})
-  const aktAbschnitt = () => schueler[0].abschnitte.slice(-1)[0]
-  function faecher (s) {
-    return s.abi_abschluss_faecher.sort((a,b) => a.FSortierung - b.FSortierung)
-  }
-  function zeilen (faecher) {
-    const arr = [[''], ['12.1'], ['12.2'], ['13.1'], ['13.2']]
-    faecher.forEach(f => {
-      arr[0].push(f.FachKrz)
-      arr[1].push(f.P12_1 || '')
-      arr[2].push(f.P12_2 || '')
-      arr[3].push(f.P13_1 || '')
-      arr[4].push(f.P13_2 || '')
-    })
-    return arr
-  }
-</script>
-
-<style>
-  @import 'css/main.css';
-  @import 'css/a3-landscape.css';
-  table {
-    width: 98%;
-    border-collapse: collapse;
-  }
-  table td {
-    border: thin solid #ddd;
-    white-space:nowrap;
-    text-align: center;
-  }
-  .flex-grid {
-    display: flex;
-  }
-  .tabelle {
-    flex: 65%;
-  }
-  .bemerkungen {
-    flex: 35%;
-  }
-  .red { background-color: tomato; }
-</style>

+ 0 - 87
AHR Vornoten BA.html

@@ -1,87 +0,0 @@
-{#each chunk(schueler, anzahl) as slice, i}
-  <div class="page grid" orientation="landscape" size="A3">
-    <div class="header">
-      <pre>
-        Konferenzliste APA BK Berufsabschluss <b>{klasse.Klasse || schueler[0].Klasse}</b> &Tab; {aktAbschnitt().klassenlehrer_in}: <b>{`${aktAbschnitt().lehrer.Vorname} ${aktAbschnitt().lehrer.Nachname} (${aktAbschnitt().lehrer.Kuerzel})`}</b> &Tab; Stand: {heute()}
-      </pre>
-    </div>
-    <div class="main">
-      {#each slice as s, ii}
-        <b>{(i*anzahl)+ii+1}. {s.Name}, {s.Vorname}</b>
-        <div class="flex-grid">
-          <div class="tabelle">
-            <table>
-              {#each zeilen(faecher(s)) as row}
-                <tr>
-                  {#each row as cell}
-                    <td>{cell}</td>
-                  {/each}
-                </tr>
-              {/each}
-            </table>
-          </div>
-          <div class="bemerkungen">
-            Bermerkungen:
-            {#each '12345' as i}
-              <hr>
-              <Voffset v=2 />
-            {/each}
-          </div>
-        </div>
-        <Voffset v=1 />
-      {/each}
-    </div>
-    <div class="footer">Seite {i+1}/{Math.ceil(schueler.length/anzahl)}</div>
-  </div>
-{/each}
-
-<script>
-  import { datum, chunk, punkte2note }  from './helfer'
-  import Voffset from './partials/Voffset.html'
-  export let schueler, schule, privat, jahr, abschnitt, klasse
-
-  const anzahl = 5
-  const heute = () => new Date().toLocaleDateString('de', {day: '2-digit', month: '2-digit', year: 'numeric'})
-  const aktAbschnitt = () => schueler[0].abschnitte.slice(-1)[0]
-  function faecher (s) {
-    return s.abi_abschluss_faecher.filter(f => f.fach.Fachgruppe_ID !== 30).sort((a,b) => a.FSortierung - b.FSortierung)
-  }
-  function zeilen (faecher) {
-    const arr = [[''], ['13.1'], ['13.2'], ['VN'], ['SP'], ['BA']]
-    faecher.forEach(f => {
-      const anzahlNoten = [f.P13_1, f.P13_2].filter(n => parseInt(n) > 0).length
-      const vornote = Math.round((parseFloat(f.P13_1 || 0.0) + parseFloat(f.P13_2 || 0.0)) / anzahlNoten)
-      arr[0].push(f.FachKrz)
-      arr[1].push(punkte2note(f.P13_1) || '')
-      arr[2].push(punkte2note(f.P13_2) || '')
-      arr[3].push(parseInt(punkte2note(vornote)) || '–')
-      arr[4].push('123'.includes(f.AbiFach) ? (punkte2note(parseInt(f.AbiPruefErgebnis)) || '') : '')
-      if ('123'.includes(f.AbiFach) && !f.AbiPruefErgebnis) arr[5].push('…')
-      else arr[5].push(parseInt(punkte2note('123'.includes(f.AbiFach) ? (Math.round((vornote + parseInt(f.AbiPruefErgebnis))/2)) : vornote)))
-    })
-    return arr
-  }
-</script>
-
-<style>
-  @import 'css/main.css';
-  @import 'css/a3-landscape.css';
-  table {
-    width: 98%;
-    border-collapse: collapse;
-  }
-  table td {
-    border: thin solid #ddd;
-    white-space:nowrap;
-    text-align: center;
-  }
-  .flex-grid {
-    display: flex;
-  }
-  .tabelle {
-    flex: 65%;
-  }
-  .bemerkungen {
-    flex: 35%;
-  }
-</style>

+ 0 - 125
Allg AGZ.html

@@ -1,125 +0,0 @@
-{#each schueler as s (s.ID)}
-  {#each s.abschnitte.filter(aktHalbjahr) as hj (hj.ID)}
-    <div class="page grid" orientation="portrait" size="A4">
-      <Seitenlogo logo="{privat.traegerLogo}"/>
-      <Pageheader art="daten/agz.svg" logo="{privat.logo}" untertitel="{privat.untertitel}"/>
-      <div class="main">
-        <div style="font-size: 15pt; line-height: 1.5em">
-          {bg(s, 'Schulform')}
-        </div>
-        <div style="font-size: 12pt; line-height: 1.2em">
-          {bg(s, 'Bereich')}
-          {#if s.ASDSchulform.startsWith('B')}
-            <br />
-            Abschluss {@html s.Geschlecht === 3 ? bg(s, 'Berufsbezeichnung_m') : bg(s, 'Berufsbezeichnung_w')}
-          {/if}
-        </div>
-        <Voffset v="1"/>
-        <b>{s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name},</b>
-        <br />geboren am {datum(s.Geburtsdatum)} in {s.Geburtsort},<br />
-        war vom {datum(s.BeginnBildungsgang)} bis {datum(s.Entlassdatum)} {s.schueler_in}
-        des Bildungsgangs {bg(s, 'Zeugniskopf')}.
-        <br />{s.Geschlecht === 3 ? 'Er':'Sie'} war zuletzt {s.schueler_in} in der Klasse {s.Klasse}.
-        <Voffset v="2"/>
-        Leistungen laut Konferenzbeschluss vom {datum(hj.Konferenzdatum)}:
-        <button class="vbutton no-print" on:click="{() => zeigeBKAbschlussNoten = !zeigeBKAbschlussNoten}">
-          BK-Abschluss wird {zeigeBKAbschlussNoten ? '' : 'nicht'} verwendet
-        </button>
-        <Noten
-          noten={zeigeBKAbschlussNoten ? s.bk_abschluss_faecher : hj.noten}
-          fachGliederungen={s.fachklasse.fach_gliederungen}
-          ger
-          fachklasse={s.fachklasse.Kennung}
-          faechergruppenIds={[10,20,30]}
-        ></Noten>
-        <hr />
-        {#if zeigeVersetzungsvermerk}
-          <b>{versetzungsvermerk(hj)}</b>
-        {/if}
-        <button class="vbutton no-print" on:click="{() => zeigeVersetzungsvermerk = !zeigeVersetzungsvermerk}">
-          Versetzungsvermerk {zeigeVersetzungsvermerk ? 'entfernen' : 'anzeigen'}
-        </button>
-        <Voffset v="1"/>
-        <b>Bemerkungen</b><br />{@html bemerkungen(hj)}
-          {#if zeige_FHR}
-            <Voffset v="2"/>
-            {s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name} hat nach § 13 a Absatz 1 Anlage D
-            APO-BK mit der Versetzung in die Jahrgangsstufe 12 die
-            Voraussetzungen für die Zuerkennung des schulischen Teils der
-            Fachhochschulreife erfüllt. Der Abschluss ist im Deutschen und
-            Europäischen Qualifikationsrahmen dem Niveau 4 zugeordnet. Dieses
-            Zeugnis gilt in Verbindung mit dem Nachweis einer mindestens
-            zweijährigen abgeschlossenen Berufsausbildung nach Bundes- oder
-            Landesrecht als Nachweis der Fachhochschulreife. Es berechtigt
-            in den Ländern Nordrhein-Westfalen, Niedersachsen und
-            Schleswig-Holstein zum Studium an Fachhochschulen.
-            <Voffset v="2"/>
-            <table class="table-noten">
-              <tr>
-                <td>Durchschnittsnote:</td>
-                <td class="td-fach-note"><span>{s.fhr_abschluss && s.fhr_abschluss.Note}</span></td>
-                <td>in&nbsp;Worten:</td>
-                <td class="td-fach-note"><span>{@html s.fhr_abschluss && s.fhr_abschluss.Note && noteInWorten(s.fhr_abschluss.Note)}</span></td>
-              </tr>
-            </table>
-          {/if}
-          <button class="vbutton no-print" on:click="{() => zeige_FHR = !zeige_FHR}">
-            FHR abgeschlossen: {zeige_FHR ? 'Ja' : 'Nein'}
-          </button>
-      </div>
-      <div class="footer">
-        <div class="flex-grid">
-          <div class="col-2">
-            {schule.Ort}, den {datum(hj.ZeugnisDatum)}
-          </div>
-          <div class="col text-center klein">
-            <Voffset v="3"/>
-            <hr />
-            {schule.SchulleiterVorname} {schule.SchulleiterName}<br />{schule.schulleiter_in}
-          </div>
-          <div class="col text-center klein">
-            <Voffset v="3"/>
-            Siegel
-          </div>
-          <div class="col text-center klein">
-            <Voffset v="3"/>
-            <hr />
-            {hj.lehrer.Vorname} {hj.lehrer.Nachname}<br />{hj.klassenlehrer_in}
-          </div>
-        </div>
-        <Fussnote {schule} ger></Fussnote>
-      </div>
-    </div>
-  {/each}
-{/each}
-
-<script>
-  import { datum, versetzungsvermerk, volljaehrigBei, bemerkungen, bg, noteInWorten }  from './helfer'
-
-  import Seitenlogo from './partials/Seitenlogo.html'
-  import Pageheader from './partials/Pageheader.html'
-  import Voffset from './partials/Voffset.html'
-  import Noten from './partials/Noten.html'
-  import Fussnote from './partials/Fussnoten.html'
-
-  export let schueler, schule, privat, jahr, abschnitt
-  let zeigeVersetzungsvermerk = true
-  let zeigeBKAbschlussNoten = false
-  const aktHalbjahr = a => a.Jahr === jahr && a.Abschnitt === abschnitt
-  let zeige_FHR
-  const fhrFach = (s, fach, id) => {
-    const pid = 'P1' + id
-    if (!fach[pid]) return
-    const fach2 = s.fhr_abschluss_faecher.find(f => f.Fach_ID === fach.Fach_ID)
-    const rsid = 'RSII_' + id
-    return fach2[rsid] === '+' ? fach[pid] : `(${fach[pid]})`
-  }
-</script>
-
-<style>
-  @import 'css/main.css';
-  .vbutton {
-    background-color: red;
-    color: white;
-  }
-</style>

+ 0 - 47
Allg Fotoliste.html

@@ -1,47 +0,0 @@
-{#each chunk(schueler, 25) as slice}
-  <div class="page grid" orientation="portrait" size="A4">
-    <div class="main">
-      <b>{slice[0].Klasse}</b>
-      Stand: {datum(new Date())}
-      <div class="grid" style="font-size: 0.8rem">
-        {#each slice as s}
-          <div>
-            {#await foto(s) then f}
-              <img src="data:image/jpg;base64,{f}" alt="Foto" style="width: 120px">
-            {:catch}
-              Kein Foto
-            {/await}
-            <br>
-            {s.Name}, {s.Vorname}
-          </div>
-        {/each}
-      </div>
-    </div>
-  </div>
-{/each}
-
-<script>
-  import { datum, chunk } from './helfer'
-  export let schueler, knexConfig
-  const mysql = R('mysql')
-  var connection = mysql.createConnection(knexConfig.connection)
-  connection.connect()
-  async function foto (s) {
-    return new Promise((resolve, reject) => {
-      connection.query('SELECT Foto FROM `schuelerfotos` WHERE `Schueler_ID` = ?', [s.ID],
-        (err, rows) => {
-          if (err || rows.length===0) return reject(err);
-          resolve(Buffer.from(rows[0].Foto, 'binary').toString('base64'));
-      });
-    });
-  }
-</script>
-
-<style>
-  @import 'css/main.css';
-  .grid {
-    display: grid;
-    grid-template-columns: repeat(5, 1fr);
-    grid-gap: 10px;
-  }
-</style>

+ 0 - 79
Allg HJZ.html

@@ -1,79 +0,0 @@
-{#each schueler as s (s.ID)}
-  {#each s.abschnitte.filter(aktHalbjahr) as hj (hj.ID)}
-    <div class="page grid" orientation="portrait" size="A4">
-      <Seitenlogo logo="{privat.traegerLogo}"/>
-      <Pageheader art="daten/zeugnis.svg" logo="{privat.logo}" untertitel="{privat.untertitel}"/>
-      <div class="main">
-        <div style="font-size: 15pt; line-height: 1.5em">
-          {bg(s, 'Schulform')}
-        </div>
-        <div style="font-size: 12pt; line-height: 1.2em">
-          {bg(s, 'Bereich')}
-          {#if s.ASDSchulform.startsWith('B')}
-            <br />
-            Abschluss {@html s.Geschlecht === 3 ? bg(s, 'Berufsbezeichnung_m') : bg(s, 'Berufsbezeichnung_w')}
-          {/if}
-        </div>
-        <Voffset v="1"/>
-        <b>{s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name},</b>
-        <br />geboren am {datum(s.Geburtsdatum)} in {s.Geburtsort},<br />
-        besuchte im {hj.Abschnitt}. Halbjahr des Schuljahres {hj.schuljahr} die Klasse {hj.Klasse}
-        <Voffset v="2"/>
-        Leistungen laut Konferenzbeschluss vom {datum(hj.Konferenzdatum)}:
-        <Noten noten={hj.noten} fachGliederungen={s.fachklasse.fach_gliederungen}></Noten>
-        <hr />
-        Fehlstunden: {Number(hj.SumFehlStd) || 0}{#if Number(hj.SumFehlStd) > 0}, davon unentschuldigt: {hj.SumFehlStdU || 0}<Voffset v="1"/>{/if}
-        <Voffset v="1"/>
-        <b>Bemerkungen</b><br />{@html bemerkungen(hj)}
-      </div>
-      <div class="footer">
-        <div class="flex-grid">
-          <div class="col-2">
-            {schule.Ort}, den {datum(hj.ZeugnisDatum)}
-          </div>
-          <div class="col text-center klein">
-            <Voffset v="3"/>
-            <hr />
-            {hj.lehrer.Vorname} {hj.lehrer.Nachname}<br />{hj.klassenlehrer_in}
-          </div>
-          <div class="col text-center klein">
-            <Voffset v="3"/>
-            Siegel
-          </div>
-        </div>
-        <div class="flex-grid">
-          <div class="col-2"></div>
-          <div class="col-2">
-            <Voffset v="1"/>
-            Die Kenntnisnahme wird bestätigt:
-          </div>
-          <div class="col">
-            <Voffset v="3"/>
-            <hr />
-            <div class="klein text-center">
-              {volljaehrigBei(s, hj.ZeugnisDatum) ? s.schueler_in : 'Erziehungsberechtigte'}
-            </div>
-          </div>
-        </div>
-        <Fussnote schule={schule}></Fussnote>
-      </div>
-    </div>
-  {/each}
-{/each}
-
-<script>
-  import { datum, versetzungsvermerk, volljaehrigBei, bemerkungen, bg }  from './helfer'
-
-  import Seitenlogo from './partials/Seitenlogo.html'
-  import Pageheader from './partials/Pageheader.html'
-  import Voffset from './partials/Voffset.html'
-  import Noten from './partials/Noten.html'
-  import Fussnote from './partials/Fussnoten.html'
-
-  export let schueler, schule, privat, jahr, abschnitt
-  const aktHalbjahr = a => a.Jahr === jahr && a.Abschnitt === abschnitt
-</script>
-
-<style>
-  @import 'css/main.css';
-</style>

+ 0 - 104
Allg JZ.html

@@ -1,104 +0,0 @@
-{#each schueler as s (s.ID)}
-  {#each s.abschnitte.filter(aktHalbjahr) as hj (hj.ID)}
-    <div class="page grid" orientation="portrait" size="A4">
-      <Seitenlogo logo="{privat.traegerLogo}"/>
-      <Pageheader art="daten/zeugnis.svg" logo="{privat.logo}" untertitel="{privat.untertitel}"/>
-      <div class="main">
-        <div style="font-size: 15pt; line-height: 1.5em">
-          {bg(s, 'Schulform')}
-        </div>
-        <div style="font-size: 12pt; line-height: 1.2em">
-          {bg(s, 'Bereich')}
-          {#if s.ASDSchulform.startsWith('B')}
-            <br />
-            Abschluss {@html s.Geschlecht === 3 ? bg(s, 'Berufsbezeichnung_m') : bg(s, 'Berufsbezeichnung_w')}
-          {/if}
-        </div>
-        <Voffset v="1"/>
-        <b>{s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name},</b>
-        <br />geboren am {datum(s.Geburtsdatum)} in {s.Geburtsort},<br />
-        {#if s.ASDSchulform.startsWith('E')}
-          besuchte das Schuljahr {hj.schuljahr} in der Klasse {hj.Klasse}
-        {:else}
-          besuchte im {hj.Abschnitt}. Halbjahr des Schuljahres {hj.schuljahr} die Klasse {hj.Klasse}
-        {/if}
-        <Voffset v="2"/>
-        Leistungen laut Konferenzbeschluss vom {datum(hj.Konferenzdatum)}:
-        <Noten noten={hj.noten} fachGliederungen={s.fachklasse.fach_gliederungen}></Noten>
-        <hr />
-        {#if !s.ASDSchulform.startsWith('E')}
-          Fehlstunden: {Number(hj.SumFehlStd) || 0}{#if Number(hj.SumFehlStd) > 0}, davon unentschuldigt: {hj.SumFehlStdU || 0}
-            <Voffset v="1"/>
-          {/if}
-        {/if}
-        <Voffset v="1"/>
-        <b>{versetzungsvermerk(hj)}</b>
-        <Voffset v="1"/>
-        {#if s.ASDSchulform.startsWith('C') && hj.VersetzungKrz==='V'}
-          Der Unterricht in der Klasse 12 kann nur aufgenommen werden, wenn
-          zu Beginn des 12. Schuljahres der Nachweis über die erfolgreiche
-          Ableistung des Praktikantenjahres gemäß
-          Praktikum-Ausbildungsordnung, RdErl. v. 11.12.2006 (BASS 13 – 31
-          Nr. 1) vorgelegt wird.
-          <Voffset v="1"/>
-        {/if}
-        <b>Bemerkungen</b><br />{@html bemerkungen(hj)}
-      </div>
-      <div class="footer">
-        <div class="flex-grid">
-          <div class="col-2">
-            {schule.Ort}, den {datum(hj.ZeugnisDatum)}
-          </div>
-          <div class="col text-center klein">
-          <Voffset v="3"/>
-            <hr />
-            {schule.SchulleiterVorname} {schule.SchulleiterName} <br />{schule.schulleiter_in}
-          </div>
-          <div class="col text-center klein">
-          <Voffset v="3"/>
-            Siegel
-          </div>
-          <div class="col text-center klein">
-          <Voffset v="3"/>
-            <hr />
-            {hj.lehrer.Vorname} {hj.lehrer.Nachname}<br />{hj.klassenlehrer_in}
-          </div>
-        </div>
-        <div class="flex-grid">
-          {#if !s.ASDSchulform.startsWith('E')}
-            <div class="col-2"></div>
-            <div class="col-2">
-              <Voffset v="1"/>
-              Die Kenntnisnahme wird bestätigt:
-            </div>
-            <div class="col">
-              <Voffset v="3"/>
-              <hr />
-              <div class="klein text-center">
-                {volljaehrigBei(s, hj.ZeugnisDatum) ? s.schueler_in : 'Erziehungsberechtigte'}
-              </div>
-            </div>
-          {/if}
-        </div>
-        <Fussnote schule={schule}></Fussnote>
-      </div>
-    </div>
-  {/each}
-{/each}
-
-<script>
-  import { datum, versetzungsvermerk, volljaehrigBei, bemerkungen, bg }  from './helfer'
-
-  import Seitenlogo from './partials/Seitenlogo.html'
-  import Pageheader from './partials/Pageheader.html'
-  import Voffset from './partials/Voffset.html'
-  import Noten from './partials/Noten.html'
-  import Fussnote from './partials/Fussnoten.html'
-
-  export let schueler, schule, privat, jahr, abschnitt
-  const aktHalbjahr = (a) => a.Jahr === jahr && a.Abschnitt === abschnitt
-</script>
-
-<style>
-  @import 'css/main.css';
-</style>

+ 0 - 105
Allg Konferenzliste Punkte.html

@@ -1,105 +0,0 @@
-{#each chunk(schueler, anzahl) as slice, i}
-  <div class="page grid" orientation="landscape" size="A3" style="font-size: 1.1rem">
-    <div class="header">
-      <pre>
-        Konferenzliste <b>{klasse.Klasse || schueler[0].Klasse}</b> &Tab; {aktAbschnitt().klassenlehrer_in}: <b>{`${aktAbschnitt().lehrer.Vorname} ${aktAbschnitt().lehrer.Nachname} (${aktAbschnitt().lehrer.Kuerzel})`}</b> &Tab; Stand: {heute()} &Tab; Konferenzdatum: {datum(aktAbschnitt().Konferenzdatum)} &Tab; Zeugnisdatum: {datum(aktAbschnitt().ZeugnisDatum)}
-      </pre>
-    </div>
-    <div class="main">
-      <Voffset v=1/>
-      <table>
-        <tr>
-          <th><b>Nr</b></th>
-          <th><b>Name</b></th>
-          <th class="rotate"><div><span><b>FStd</b></span></div></th>
-          <th class="rotate"><div><span><b>uFStd</b></span></div></th>
-          {#each Array.from(faecher) as f}
-            <th class="rotate"><div><span><b>{f}</b></span></div></th>
-          {/each}
-          <th><b>Bemerkungen</b></th>
-        </tr>
-        <tr><td colspan="2" style="height: 4rem">Bitte abzeichnen</td>{#each Array.from(faecher) as f}<td></td>{/each}<td></td><td></td><td></td></tr>
-        {#each slice as s, ii}
-          {#each s.abschnitte.filter(aktHalbjahr) as hj (hj.ID)}
-            <tr>
-              <td><b>{i*anzahl+ii+1}</b></td>
-              <td><b>{s.Name}, {s.Vorname}</b></td>
-              <td>{hj.SumFehlStd || 0}</td>
-              <td>{hj.SumFehlStdU || 0}</td>
-              {#each Array.from(faecher) as f}
-                {#each [hj.noten.find(n => n.fach.FachKrz === f)||{}] as n}
-                  <td class="text-center" style={note2punkte(n.NotenKrz) < 5 ? 'background:tomato;':''}>
-                    <span class:kreis={n.Warnung==='+'}>{note2punkte(n.NotenKrz) || '–'}</span>
-                  </td>
-                {/each}
-              {/each}
-              <td class="extraklein">{hj.ZeugnisBem || ''}</td>
-            </tr>
-          {/each}
-        {/each}
-      </table>
-    </div>
-    <div class="footer">Seite {i+1}/{Math.ceil(schueler.length/anzahl)}</div>
-  </div>
-{/each}
-
-<script>
-  import { datum, chunk, note2punkte }  from './helfer'
-
-  import Voffset from './partials/Voffset.html'
-
-  export let schueler, schule, privat, jahr, abschnitt, klasse
-  const aktHalbjahr = (a) => a.Jahr === jahr && a.Abschnitt === abschnitt
-  const heute = () => new Date().toLocaleDateString('de', {day: '2-digit', month: '2-digit', year: 'numeric'})
-  const anzahl = 25
-  const aktAbschnitt = () => schueler[0].abschnitte.slice(-1)[0]
-  const faecher = new Set
-  schueler.forEach(s => s.abschnitte.find(aktHalbjahr).noten.forEach(n => {faecher.add(n.fach.FachKrz)}))
-</script>
-
-<style>
-  @import 'css/main.css';
-  @import 'css/a3-landscape.css';
-  table {
-    border-collapse: collapse;
-    width:auto;
-  }
-  table td {
-    border: thin solid #ddd;
-    line-height: 1.3rem;
-    padding: 9px;
-    white-space:nowrap;
-  }
-  table td.extraklein {
-    font-size: .6rem;
-    white-space:pre-wrap;
-    word-wrap:break-word;
-    vertical-align: top;
-    padding: 1px;
-  }
-  table td:last-child {
-    width: 100%;
-  }
-  th.rotate {
-    height: 30px;
-    white-space: nowrap;
-  }
-  th.rotate > div {
-    transform:
-      translate(20px, -3px)
-      rotate(315deg);
-    box-sizing: border-box;
-  }
-  th.rotate > div > span {
-    border-bottom: 1px solid #ccc;
-    width: 30px;
-    transform-origin: left bottom;
-    display: inline-block
-  }
-  .kreis {
-    border: 0.2rem solid red;
-    border-radius: 20%;
-    padding: 0.2rem;
-  }
-
-</style>

+ 0 - 106
Allg Konferenzliste.html

@@ -1,106 +0,0 @@
-{#each chunk(schueler, anzahl) as slice, i}
-  <div class="page grid" orientation="landscape" size="A3" style="font-size: 1.1rem">
-    <div class="header">
-      <pre>
-        Konferenzliste <b>{klasse.Klasse || schueler[0].Klasse}</b> &Tab; {aktAbschnitt().klassenlehrer_in}: <b>{`${aktAbschnitt().lehrer.Vorname} ${aktAbschnitt().lehrer.Nachname} (${aktAbschnitt().lehrer.Kuerzel})`}</b> &Tab; Stand: {heute()} &Tab; Konferenzdatum: {datum(aktAbschnitt().Konferenzdatum)} &Tab; Zeugnisdatum: {datum(aktAbschnitt().ZeugnisDatum)}
-      </pre>
-    </div>
-    <div class="main">
-      <Voffset v=1/>
-      <table>
-        <tr>
-          <th><b>Nr</b></th>
-          <th><b>Name</b></th>
-          <th class="rotate"><div><span><b>FStd</b></span></div></th>
-          <th class="rotate"><div><span><b>uFStd</b></span></div></th>
-          {#each Array.from(faecher) as f}
-            <th class="rotate"><div><span><b>{f}</b></span></div></th>
-          {/each}
-          <th><b>Bemerkungen</b></th>
-        </tr>
-        <tr><td colspan="2" style="height: 4rem">Bitte abzeichnen</td>{#each Array.from(faecher) as f}<td></td>{/each}<td></td><td></td><td></td></tr>
-        {#each slice as s, ii}
-          {#each s.abschnitte.filter(aktHalbjahr) as hj (hj.ID)}
-            <tr>
-              <td><b>{i*anzahl+ii+1}</b></td>
-              <td><b>{s.Name}, {s.Vorname}</b></td>
-              <td>{hj.SumFehlStd || 0}</td>
-              <td>{hj.SumFehlStdU || 0}</td>
-              {#each Array.from(faecher) as f}
-                {#each [hj.noten.find(n => n.fach.FachKrz === f)||{}] as n}
-                  <td class="text-center" style={parseInt(n.NotenKrz) > 4 ? 'background:tomato;':''}>
-                    <span class:kreis={n.Warnung==='+'}>{n.NotenKrz || '–'}</span>
-                  </td>
-                {/each}
-              {/each}
-              <td class="extraklein">{hj.ZeugnisBem || ''}</td>
-            </tr>
-          {/each}
-        {/each}
-      </table>
-    </div>
-    <div class="footer">Seite {i+1}/{Math.ceil(schueler.length/anzahl)}</div>
-  </div>
-{/each}
-
-<script>
-  import { datum, chunk }  from './helfer'
-
-  import Voffset from './partials/Voffset.html'
-
-  export let schueler, schule, privat, jahr, abschnitt, klasse
-  const aktHalbjahr = (a) => a.Jahr === jahr && a.Abschnitt === abschnitt
-  const heute = () => new Date().toLocaleDateString('de', {day: '2-digit', month: '2-digit', year: 'numeric'})
-  const anzahl = 25
-  const aktAbschnitt = () => schueler[0].abschnitte.slice(-1)[0]
-  const faecher = new Set
-  schueler.forEach(s => s.abschnitte.find(aktHalbjahr).noten.forEach(n => {faecher.add(n.fach.FachKrz)}))
-</script>
-
-<style>
-  @import 'css/main.css';
-  @import 'css/a3-landscape.css';
-  table {
-    border-collapse: collapse;
-    width:auto;
-  }
-  table td {
-    border: thin solid #ddd;
-    line-height: 1.3rem;
-    padding: 9px;
-    white-space:nowrap;
-  }
-  table td.extraklein {
-    font-size: .6rem;
-    white-space:pre-wrap;
-    word-wrap:break-word;
-    vertical-align: top;
-    padding: 1px;
-  }
-  table td:last-child {
-    width: 100%;
-  }
-  th.rotate {
-    height: 30px;
-    white-space: nowrap;
-  }
-  th.rotate > div {
-    transform:
-      translate(20px, -3px)
-      rotate(315deg);
-    box-sizing: border-box;
-  }
-  th.rotate > div > span {
-    border-bottom: 1px solid #ccc;
-    width: 30px;
-    transform-origin: left bottom;
-    display: inline-block
-  }
-  .kreis {
-    border: 0.2rem solid red;
-    border-radius: 20%;
-    padding: 0.2rem;
-  }
-
-</style>
-

+ 0 - 130
BFS AGZ 2seitig.html

@@ -1,130 +0,0 @@
-{#each schueler as s (s.ID)}
-  {#each s.abschnitte.filter(aktHalbjahr) as hj (hj.ID)}
-    <div class="page grid" orientation="portrait" size="A4">
-      <Seitenlogo logo="{privat.traegerLogo}"/>
-      <Pageheader art="daten/agz.svg" logo="{privat.logo}" untertitel="{privat.untertitel}"/>
-      <div class="main">
-        <div style="font-size: 15pt; line-height: 1.5em">
-          {bg(s, 'Schulform')}
-        </div>
-        <div style="font-size: 12pt; line-height: 1.2em">
-          {bg(s, 'Bereich')}
-          {#if s.ASDSchulform.startsWith('B')}
-            <br />
-            Abschluss {@html s.Geschlecht === 3 ? bg(s, 'Berufsbezeichnung_m') : bg(s, 'Berufsbezeichnung_w')}
-          {/if}
-        </div>
-        <Voffset v="1"/>
-        <b>{s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name},</b>
-        <br />geboren am {datum(s.Geburtsdatum)} in {s.Geburtsort},<br />
-        war vom {datum(s.BeginnBildungsgang)} bis {datum(s.Entlassdatum)} {s.schueler_in}
-        des Bildungsgangs
-        <br>{bg(s, 'Zeugniskopf')}.
-        <br>{s.Geschlecht === 3 ? 'Er':'Sie'} war zuletzt {s.schueler_in} in der Klasse {s.Klasse}.
-        <Voffset v="2"/>
-        Leistungen laut Konferenzbeschluss vom {datum(hj.Konferenzdatum)}:
-        <Noten
-          noten={hj.noten}
-          fachGliederungen={s.fachklasse.fach_gliederungen}
-          ger
-          fachklasse={s.fachklasse.Kennung}
-          faechergruppenIds={[10,20,30]}
-        ></Noten>
-        <hr />
-        <Voffset v="1"/>
-        {#if zeigeVersetzungsvermerk}
-          <b>{versetzungsvermerk(hj)}</b>
-        {/if}
-        <button class="vbutton no-print" on:click="{() => zeigeVersetzungsvermerk = !zeigeVersetzungsvermerk}">
-          Versetzungsvermerk {zeigeVersetzungsvermerk ? 'entfernen' : 'anzeigen'}
-        </button>
-        <Voffset v="1"/>
-        {#if zeigeAbschlussVermerk}
-          {#if s.Entlassart!=='5A'}
-            <div class="text-center">
-              <Voffset v="2"/>
-              {s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name} hat den
-              <Voffset v="0.5"/>
-              <b>mittleren Schulabschluss (Fachoberschulreife)</b>
-              {#if s.Entlassart==='5G'}
-                <br><b>mit Berechtigung zum Besuch der gymnasialen Oberstufe</b>
-              {/if}
-              <Voffset v="0.5"/>
-              erworben.
-            </div>
-          {:else}<Voffset v="3"/>
-          {/if}
-          <Voffset v="1"/>
-          Der Abschluss ist im Deutschen und Europäischen Qualifikationsrahmen dem Niveau 3 zugeordnet.
-          <Voffset v="1"/>
-          {s.Geschlecht === 3 ? "Der Schüler": "Die Schülerin"} hat ein bildungsgangbegleitendes Praktikum im Umfang von 16 Wochen absolviert.
-        {/if}
-        <button class="vbutton no-print" on:click="{() => zeigeAbschlussVermerk = !zeigeAbschlussVermerk}">
-          Abschlusssvermerk {zeigeAbschlussVermerk ? 'entfernen' : 'anzeigen'}
-        </button>
-        <Voffset v="1"/>
-        <b>Bemerkungen</b><br />{@html bemerkungen(hj)}
-      </div>
-      <div class="footer">
-        <div class="flex-grid">
-          <div class="col-2">
-            {schule.Ort}, den {datum(hj.ZeugnisDatum)}
-          </div>
-          <div class="col text-center klein">
-          <Voffset v="3"/>
-            <hr />
-            {schule.SchulleiterVorname} {schule.SchulleiterName} <br />{schule.schulleiter_in}
-          </div>
-          <div class="col text-center klein">
-          <Voffset v="3"/>
-            Siegel
-          </div>
-          <div class="col text-center klein">
-          <Voffset v="3"/>
-            <hr />
-            {hj.lehrer.Vorname} {hj.lehrer.Nachname}<br />{hj.klassenlehrer_in}
-          </div>
-        </div>
-        <Fussnote {schule} ger rechtsbehelfsbelehrung={false} verordnung={false}></Fussnote>
-      </div>
-    </div>
-    <div class="page grid" orientation="portrait" size="A4">
-      <div class="main">
-        Seite 2/2 des Abgangsszeugnisses für {s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name}
-        <Voffset v="2"/>
-        <SoaTabelle></SoaTabelle>
-      </div>
-      <div class="footer">
-        <Fussnote {schule} bfs notenstufen={false}></Fussnote>
-      </div>
-    </div>
-  {/each}
-{/each}
-
-
-<script>
-  import { datum, versetzungsvermerk, bemerkungen, bg }  from './helfer'
-
-  import Seitenlogo from './partials/Seitenlogo.html'
-  import Pageheader from './partials/Pageheader.html'
-  import Voffset from './partials/Voffset.html'
-  import SoaTabelle from './partials/SOA-Tabelle.html'
-  import Noten from './partials/Noten.html'
-  import Fussnote from './partials/Fussnoten.html'
-
-  export let schueler, schule, privat, jahr, abschnitt
-  let zeigeVersetzungsvermerk = true
-  let zeigeAbschlussVermerk = false
-  const abschlussVermerk = _ => {
-
-  }
-  const aktHalbjahr = a => a.Jahr === jahr && a.Abschnitt === abschnitt
-</script>
-
-<style>
-  @import 'css/main.css';
-  .vbutton {
-    background-color: red;
-    color: white;
-  }
-</style>

+ 0 - 175
BFS ASZ.html

@@ -1,175 +0,0 @@
-{#each schueler as s (s.ID)}
-  {#each aktHalbjahrFuer(s) as hj (hj.ID)}
-    <div class="page grid" orientation="landscape" size="A3">
-      <Seitenlogo logo="{privat.traegerLogo}"/>
-      <Pageheader art="daten/asz.svg" logo="{privat.logo}" untertitel="{privat.untertitel}"/>
-      <div class="main">
-        <div class="main-grid">
-          <Voffset v="1"/>
-          <div class="main-left">
-            <b>{s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name},</b>
-            <br />geboren am {datum(s.Geburtsdatum)} in {s.Geburtsort},
-            <br />war vom {datum(s.Aufnahmedatum)} bis zur Aushändigung des Zeugnisses {s.schueler_in} des Bildungsgangs
-            <br /><b>{bg(s, 'Zeugniskopf')}.</b>
-            <Voffset v=".5"/>
-            Der allgemeine Prüfungsausschuss stellte in seiner Abschlusskonferenz am {datum(hj.Konferenzdatum)} fest:
-            <Voffset v=".5"/>
-            <b>Leistungen</b>
-            <div style="font-size: 90%">
-              <Noten
-                noten={hj.noten}
-                faechergruppenIds={[10, 20, 30]}
-                fachGliederungen={s.fachklasse.fach_gliederungen}
-                ger
-                fachklasse={s.fachklasse.Kennung}
-              ></Noten>
-            </div>
-            <hr />
-            <Voffset v="1"/>
-            {s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name} hat ein
-            bildungsgangbegleitendes Praktikum in Einrichtungen für Kinder
-            und Jugendliche sowie alte, kranke und behinderte Menschen im
-            Umfang von 16 Wochen absolviert.
-            <Voffset v="1"/>
-            <b>Bemerkungen</b>
-            <br />{@html bemerkungen(hj)}
-          </div>
-          <div class="main-right">
-            <Voffset v="2"/>
-            <table class="table-noten">
-              {#each s.bk_abschluss_faecher.filter(f => f.fach.FachKrz.startsWith('AS')) as as}
-                <tr>
-                  <td width="22%">{as.fach.Zeugnisbez}</td>
-                  <td class="td-padding-extra">{findeFach(hj, as).Lernentw}</td>
-                  <td class="td-fach-note"><span>{note(as.NoteAbschluss)}</span></td>
-                </tr>
-              {/each}
-            </table>
-            <Voffset v="4"/>
-            {s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name} hat die Berufsabschlussprüfung bestanden und ist berechtigt, die Berufsbezeichnung
-            <h6 class="text-center">{@html bg(s, (s.Geschlecht === 3 ? 'Berufsbezeichnung_m' : 'Berufsbezeichnung_w'))}</h6>
-            zu führen.
-            <Voffset v="1"/>
-            Der Abschluss ist im Deutschen und Europäischen Qualifikationsrahmen dem Niveau {s.fachklasse.DQR_Niveau} zugeordnet.
-            {#if s.Entlassart!=='5A'}
-              <div class="text-center">
-                <Voffset v="2"/>
-                {s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name} hat den
-                <Voffset v="0.5"/>
-                <b>mittleren Schulabschluss (Fachoberschulreife)</b>
-                {#if s.Entlassart==='5G'}
-                  <br><b>mit Berechtigung zum Besuch der gymnasialen Oberstufe</b>
-                {/if}
-                <Voffset v="0.5"/>
-                erworben.
-              </div>
-            {:else}<Voffset v="3"/>
-            {/if}
-            <Voffset v="6"/>
-            {schule.Ort}, den {datum(hj.ZeugnisDatum)}
-            <Voffset v="6"/>
-            <div class="flex-grid">
-              <div class="col">
-                <hr />
-                <div class="text-center klein">
-                  {schule.SchulleiterVorname} {schule.SchulleiterName}
-                  – Vorsitzende{schule.SchulleiterGeschlecht === 3 ? 'r':''} des allgemeinen
-                  <br />Prüfungsausschusses
-                </div>
-              </div>
-              <div class="col klein">
-                <div class="text-center klein">
-                  Siegel
-                </div>
-              </div>
-              <div class="col klein">
-                <hr />
-                <div class="text-center">
-                  {schule.SchulleiterVorname} {schule.SchulleiterName} <br />{schule.schulleiter_in}
-                </div>
-              </div>
-            </div>
-          </div>
-        </div>
-      </div>
-      <div class="footer klein grau">
-        <div class="schulnummer">
-          Schulnummer: {schule.SchulNr}
-        </div>
-        <hr class="hr-grau" />
-        <Voffset v="1"/>
-        <div class="footer-grid">
-          <div class="footer-left">
-            Notenstufen gemäß § 48 SchulG: 1 = sehr gut, 2 = gut, 3 = befriedigend, 4 = ausreichend, 5 = mangelhaft, 6 = ungenügend
-            <p></p>
-            <sup>1</sup>Der Unterricht in den modernen Fremdsprachen hat auf der
-            nach dem Fach in Klammern angegebenen Niveaustufe des
-            „Europäischen Referenzrahmens für Sprachen: Lernen, Lehren,
-            Beurteilen“ stattgefunden. Sind zwei Referenzniveaus ausgewiesen, ist
-            das niedrigere in vollem Umfang, das höhere in Anteilen erreicht. Bei
-            mindestens ausreichenden Leistungen wird der sprachliche
-            Kompetenzerwerb auf diesem Niveau bescheinigt.
-          </div>
-          <div class="footer-right">
-            Dem Zeugnis liegen zugrunde:
-            <ul class="list-unstyled dashes">
-              <li>
-                Die Verordnung über die Ausbildung und Prüfung in den Bildungsgängen des Berufskollegs (Ausbildungs- und Prüfungsordnung Berufskolleg, APO-BK) vom 26. Mai 1999 (SGV. NRW. 223/BASS 13 – 33 Nr. 1.1).
-              </li>
-              <li>
-                Die Vereinbarung über Fachschulen (Beschluss der Kultusministerkonferenz vom 07. November 2002 in der jeweils geltenden Fassung).
-              </li>
-            </ul>
-            <br>
-            Rechtsbehelfsbelehrung:
-            Gegen dieses Zeugnis kann innerhalb eines Monats
-            nach Bekanntgabe des Zeugnisses Widerspruch eingelegt werden. Der Widerspruch
-            ist beim {schule.Bezeichnung2}, {schule.Strasse}, {schule.PLZ} {schule.Ort},
-            schriftlich oder zur Niederschrift zu erheben. <br />Falls die Frist durch
-            das Verschulden einer/eines Bevollmächtigten versäumt wird, wird dies
-            Verschulden der Widerspruchsführerin/dem Widerspruchsführer zugerechnet.
-          </div>
-        </div>
-      </div>
-    </div>
-  {/each}
-{/each}
-
-<script>
-  export const kommentar = `
-[Anlage B6](https://bass.schul-welt.de/3129.htm#AnlageB6)
-[VV](https://bass.schul-welt.de/3129.htm#pgfId-3908229)
-**Praktikumsdauer Corona-bedingt beachten!**
-  `
-  import { datum, volljaehrigBei, bemerkungen, bg, note }  from './helfer'
-
-  import Seitenlogo from './partials/Seitenlogo.html'
-  import Pageheader from './partials/Pageheader.html'
-  import Voffset from './partials/Voffset.html'
-  import Noten from './partials/Noten.html'
-
-  export let schueler, schule, privat, jahr, abschnitt
-  const aktHalbjahrFuer = (s) => s.abschnitte.filter(a => a.Jahr === jahr && a.Abschnitt === abschnitt)
-  const findeFach = (hj, as) => hj.noten.find(n => n.fach.ID === as.fach.ID) || { Lernentw: 'undefined' }
-</script>
-
-<style>
-  @import 'css/main.css';
-  @import 'css/a3-landscape.css';
-  .td-padding-extra {
-    padding: 2mm 0 2mm 0;
-  }
-  .td-fach-note {
-    padding-bottom: .2rem;
-    padding-top: .2rem;
-    width: 12rem;
-  }
-  .td-fach-note span {
-    background-color: #dcdcdc !important;
-    text-align: center;
-    width: 10rem;
-    display: block;
-    margin: 0 auto;
-  }
-</style>
-

+ 0 - 74
BFS SOA HEH Zeugnisbeilage.html

@@ -1,74 +0,0 @@
-{#each schueler as s}
-  <div class="page grid" orientation="portrait" size="A4">
-    <Seitenlogo logo="{privat.traegerLogo}"/>
-    <Pageheader art="daten/zeugnis.svg" logo="{privat.logo}" untertitel="{privat.untertitel}"/>
-    <div class="main">
-      Seite 3/3 des Abschlusszeugnisses für {s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name}
-      <Voffset v="2"/>
-      <table class="table table-bordered" style="width: 100%">
-        <tr>
-          <th width="35%">Bereichsspezifische Fächer</th>
-          <th>Zugeordnete Lernfelder</th>
-        </tr>
-        <tr>
-          <td>Heilerziehung und Soziales</td>
-          <td>
-            <ul class="dashes">
-              <li>Pädagogische Handlungsprozesse planen, umsetzen, dokumentieren und evaluieren</li>
-              <li>Mit Beteiligten am beruflichen Handlungsprozess kommunizieren und kooperieren</li>
-              <li>Berufliche Identität entwickeln und Lebenswelten kennen</li>
-              <li>Assistierende Beziehungsgestaltung aufbauen</li>
-              <li>Mit Konzepten in Einrichtungen der Behindertenhilfe arbeiten</li>
-              <li>Kompetenzen, Ressourcen und Potentiale erkennen und entsprechende Situationen gestalten</li>
-            </ul>
-          </td>
-        </tr>
-        <tr>
-          <td>Gesundheitsförderung und Pflege</td>
-          <td>
-            <ul class="dashes">
-              <li>Pflegerische Handlungsprozesse planen, umsetzen, dokumentieren und evaluieren</li>
-              <li>Mit Pflege- und Handlungskonzepten in pflegerischen Einrichtungen arbeiten</li>
-              <li>Gesundheitserhaltung definieren, berücksichtigen und adressatengerecht anwenden</li>
-            </ul>
-          </td>
-        </tr>
-        <tr>
-          <td>Arbeitsorganisation und Recht</td>
-          <td>
-            <ul class="dashes">
-              <li>Rechtliche und verwaltungstechnische Rahmenbedingungen in der Heilerziehungshilfe berücksichtigen</li>
-              <li>Die eigene Person und Dienstleistungen vermarkten</li>
-            </ul>
-          </td>
-        </tr>
-      </table>
-    </div>
-    <div class="footer klein schulnummer">
-      Schulnummer: {schule.SchulNr}
-    </div>
-  </div>
-{/each}
-
-<script>
-  export const kommentar = `
-[Lehrplan, S. 24](https://www.berufsbildung.nrw.de/cms/upload/_lehrplaene/b/gesundheit_erziehung_soziales/bfsb_ges-erz-soz_heilerziehung.pdf)
-  `
-  export let schueler, schule, privat
-  import Seitenlogo from './partials/Seitenlogo.html'
-  import Pageheader from './partials/Pageheader.html'
-  import Voffset from './partials/Voffset.html'
-</script>
-
-<style>
-  @import 'css/main.css';
-  .table-bordered {
-    border-collapse: collapse;
-  }
-  .table-bordered tr {
-    border-bottom: thin solid #333;
-  }
-  .schulnummer {
-    text-align: right;
-  }
-</style>

+ 0 - 75
BFS SOA Verkürzte Pflegeausbildung.html

@@ -1,75 +0,0 @@
-{#each schueler as s}
-  {#each s.abschnitte.filter(aktHalbjahr) as hj (hj.ID)}
-  <div class="page grid" orientation="portrait" size="A4">
-    <Seitenlogo logo="{privat.traegerLogo}"/>
-    <Pageheader logo="{privat.logo}" untertitel="{privat.untertitel}"/>
-    <div class="main">
-      <div class="text-center">
-        <h5>Bescheinigung für den Antrag zur Verkürzung der <br>Altenpflegeausbildung gemäß § 7 Absatz 2 AltPflG</h5>
-      </div>
-      <Voffset v="4"/>
-      {s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name},
-      <br />geboren am {datum(s.Geburtsdatum)} in {s.Geburtsort},
-      <Voffset v="2"/>
-      hat im Schuljahr {hj.Jahr}/{hj.Jahr-1999} die Ausbildung
-      {s.Geschlecht === 4 ? "zur" : "zum"} <b>staatlich geprüften
-      Sozialassistent{s.Geschlecht === 4 ? 'i' : 'e'}n</b> absolviert.
-      <Voffset v="2"/>
-      Für den Antrag auf Verkürzung der Altenpflegeausbildung wird folgende
-      maßgebliche Gesamtleistung gemäß RdErl. d. Ministeriums für Gesundheit,
-      Emanzipation, Pflege und Alter (MGE-PA) v. 19.02.2015 (AZ 402-0422)
-      bescheinigt: <b>NOTE</b>
-      <Voffset v="2"/>
-      Die Bescheinigung gilt nur in Verbindung mit dem Berufsabschlusszeugnis
-      vom {datum(hj.ZeugnisDatum)}.
-      <Voffset v="7"/>
-      <div class="flex-grid">
-        <div class="col">
-          {schule.Ort}, den {datum(hj.ZeugnisDatum)}
-        </div>
-        <div class="col">
-          <Voffset v="3"/>
-          <div class="text-center klein">Siegel</div>
-        </div>
-        <div class="col">
-          <hr />
-          <div class="text-center klein">
-            {hj.lehrer.Vorname} {hj.lehrer.Nachname}<br />{hj.klassenlehrer_in}
-          </div>
-          <Voffset v="6"/>
-          <hr />
-          <div class="text-center klein">
-            {schule.SchulleiterVorname} {schule.SchulleiterName} <br />{schule.schulleiter_in}
-          </div>
-          </div>
-      </div>
-      <Voffset v="2"/>
-    </div>
-    <div class="footer klein" style="text-align:right">
-      Schulnummer: {schule.SchulNr}
-    </div>
-  </div>
-{/each}
-{/each}
-
-<script>
-export const kommentar = `
-Mindestens gut oder sehr gut, weitere Bestimmungen siehe
-[VV](https://bass.schul-welt.de/3129.htm#pgfId-3908297)
-
-[Zeugnis nach Anlage C 10](https://bass.schul-welt.de/3129.htm#AnlageC10)
-
-__Achtung, das Ändern der Praxisnachweise gilt für alle Schüler im Dokument.__
-`
-  export let schueler, schule, privat, jahr, abschnitt
-  import { datum }  from './helfer'
-  import Seitenlogo from './partials/Seitenlogo.html'
-  import Pageheader from './partials/Pageheader.html'
-  import Voffset from './partials/Voffset.html'
-  const aktHalbjahr = (a) => a.Jahr === jahr && a.Abschnitt === abschnitt
-</script>
-
-<style>
-  @import 'css/main.css';
-</style>
-

+ 0 - 72
BFS SOA Zertifikat Betreuungshelfer.html

@@ -1,72 +0,0 @@
-{#each schueler as s}
-  {#each s.abschnitte.filter(aktHalbjahr) as hj (hj.ID)}
-  <div class="page grid" orientation="portrait" size="A4">
-    <Seitenlogo logo="{privat.traegerLogo}"/>
-    <Pageheader logo="{privat.logo}" untertitel="{privat.untertitel}"/>
-    <div class="main">
-      <Voffset v="8"/>
-      <div class="text-center">
-        <h5>Zertifikat über die fachliche Qualifikation
-        <br>zur Betreuungskraft nach § 43b SGB XI</h5>
-      </div>
-      <Voffset v="4"/>
-      {s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name},
-      <br />geboren am {datum(s.Geburtsdatum)} in {s.Geburtsort},
-      <Voffset v="2"/>
-      wird bescheinigt, dass {s.Geschlecht===3?'er':'sie'} im Rahmen der Ausbildung
-      {bg(s, `Berufsbezeichnung_${s.Geschlecht===3?'m':'w'}`).replace('<br>','')} die erforderlichen fachlichen Kenntnisse
-      zur Betreuungskraft gemäß Richtlinien nach § 43b SGB XI
-      (Betreuungskräfte-RL vom 1. Januar 2017 in der jeweils geltenden
-      Fassung) erworben hat.
-      <Voffset v="1.5"/>
-      {#if s.fachklasse.Kennung === "93-103-01"}
-        Grundlage für das Zertifikat sind der Bildungsplan (APO-BK Anlage B3)
-        und die didaktische Jahresplanung (in der jeweils gültigen Fassung).
-      {/if}
-      <Voffset v="1.5"/>
-      Dieses Zertifikat gilt in Verbindung mit dem Abschlusszeugnis des
-      Bildungsganges der Berufs- fachschule {bg(s, `Berufsbezeichnung_${s.Geschlecht===3?'m':'w'}`).replace('<br>','')} vom
-      {datum(hj.ZeugnisDatum)}.
-      <Voffset v="7"/>
-      <div class="flex-grid">
-        <div class="col">
-          {schule.Ort}, den {datum(hj.ZeugnisDatum)}
-        </div>
-        <div class="col">
-          <Voffset v="3"/>
-          <div class="text-center klein">Siegel</div>
-        </div>
-        <div class="col">
-          <hr />
-          <div class="text-center klein">
-            {hj.lehrer.Vorname} {hj.lehrer.Nachname}<br />{hj.klassenlehrer_in}
-          </div>
-          <Voffset v="6"/>
-          <hr />
-          <div class="text-center klein">
-            {schule.SchulleiterVorname} {schule.SchulleiterName} <br />{schule.schulleiter_in}
-          </div>
-          </div>
-      </div>
-      <Voffset v="2"/>
-    </div>
-    <div class="footer klein" style="text-align:right">
-      Schulnummer: {schule.SchulNr}
-    </div>
-  </div>
-{/each}
-{/each}
-
-<script>
-  export let schueler, schule, privat, jahr, abschnitt
-  import { datum, bg }  from './helfer'
-  import Seitenlogo from './partials/Seitenlogo.html'
-  import Pageheader from './partials/Pageheader.html'
-  import Voffset from './partials/Voffset.html'
-  const aktHalbjahr = (a) => a.Jahr === jahr && a.Abschnitt === abschnitt
-</script>
-
-<style>
-  @import 'css/main.css';
-</style>
-

+ 0 - 26
BFS SOA Zeugnisbeilage.html

@@ -1,26 +0,0 @@
-{#each schueler as s}
-  <div class="page grid" orientation="portrait" size="A4">
-    <Seitenlogo logo="{privat.traegerLogo}"/>
-    <Pageheader art="daten/zeugnis.svg" logo="{privat.logo}" untertitel="{privat.untertitel}"/>
-    <div class="main">
-      Seite 3/3 des Abschlusszeugnisses für {s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name}
-      <Voffset v="2"/>
-      <SoaTabelle></SoaTabelle>
-    </div>
-    <div class="footer klein schulnummer">
-      Schulnummer: {schule.SchulNr}
-    </div>
-  </div>
-{/each}
-
-<script>
-  export let schueler, schule, privat
-  import Seitenlogo from './partials/Seitenlogo.html'
-  import Pageheader from './partials/Pageheader.html'
-  import Voffset from './partials/Voffset.html'
-  import SoaTabelle from './partials/SOA-Tabelle.html'
-</script>
-
-<style>
-  @import 'css/main.css';
-</style>

+ 0 - 176
FOS ASZ.html

@@ -1,176 +0,0 @@
-{#each schueler as s (s.ID)}
-  {#each aktHalbjahrFuer(s) as hj (hj.ID)}
-    <div class="page grid" orientation="landscape" size="A3">
-      <Seitenlogo logo="{privat.traegerLogo}"/>
-      <Pageheader art="daten/asz.svg" logo="{privat.logo}" untertitel="{privat.untertitel}"/>
-      <div class="main">
-        <div class="main-grid">
-          <Voffset v="1"/>
-          <div class="main-left">
-            <b>{s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name},</b>
-            <br />geboren am {datum(s.Geburtsdatum)} in {s.Geburtsort},
-            <br />war vom {datum(s.Aufnahmedatum)} bis zur Aushändigung des Zeugnisses {s.schueler_in} des Bildungsgangs
-            <br /><b>{bg(s, 'Zeugniskopf')}.</b>
-            <Voffset v=".5"/>
-            In der Konferenz am {datum(hj.Konferenzdatum)} sind folgende Leistungen festgestellt worden:
-            <Voffset v=".5"/>
-            <div style="font-size: 90%">
-              <Noten
-                noten={s.bk_abschluss_faecher}
-                faechergruppenIds={[10, 20, 30]}
-                fachGliederungen={s.fachklasse.fach_gliederungen}
-                ger
-                fachklasse={s.fachklasse.Kennung}
-              ></Noten>
-            </div>
-            <hr />
-            <b>Bemerkungen</b>
-            <br />{@html bemerkungen(hj)}
-          </div>
-          <div class="main-right">
-            <Voffset v="2"/>
-            {s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name} hat die
-            Fachhochschulreifeprüfung im vorgenannten Bildungsgang der
-            Fachoberschule am {datum(hj.Konferenzdatum)} bestanden.
-            <Voffset v="2"/>
-            Der Nachweis der fachpraktischen Ausbildung wurde durch
-            {nachweise[selected]} erbracht.
-            <div class="no-print">
-              <select bind:value="{selected}" class="no-print">
-                {#each nachweise as nachweis,i}
-                  <option value="{i}">
-                    {nachweis}
-                  </option>
-                {/each}
-              </select></div>
-            <Voffset v="1"/>
-            {s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name} wird die
-            <h4 class="text-center">Fachhochschulreife</h4>
-            zuerkannt.
-            <Voffset v="1"/>
-            Der Abschluss ist im Deutschen und Europäischen
-            Qualifikationsrahmen dem Niveau {s.fachklasse.DQR_Niveau}
-            zugeordnet. Entsprechend der Vereinbarung über die
-            Fachoberschulen – Beschluss der Kultusministerkonferenz vom 16.
-            Dezember 2004 in der jeweils geltenden Fassung – berechtigt
-            dieses Zeugnis in allen Ländern der Bundesrepublik Deutschland
-            zum Studium an Fachhochschulen.
-            <Voffset v="2"/>
-            <table width="100%">
-              <tr>
-                <td>Durchschnittsnote:</td><td class="td-fach-note"><span>{s.DurchschnittsnoteFHR}</span></td>
-                <td>in&nbsp;Worten:</td><td class="td-fach-note"><span>{@html noteInWorten(s.DurchschnittsnoteFHR)}</span></td>
-               </tr>
-            </table>
-            <Voffset v="6"/>
-            {schule.Ort}, den {datum(hj.ZeugnisDatum)}
-              <Voffset v="6"/>
-            <div class="flex-grid">
-              <Voffset v="6"/>
-              <div class="col">
-                <hr />
-                <div class="text-center klein">
-                  {schule.SchulleiterVorname} {schule.SchulleiterName} Vorsitzende{schule.SchulleiterGeschlecht === 3 ? 'r':''} des allgemeinen
-                  <br />Prüfungsausschusses
-                </div>
-              </div>
-              <div class="col klein">
-                <div class="text-center klein">
-                  Siegel
-                </div>
-              </div>
-              <div class="col klein">
-                <hr />
-                <div class="text-center">
-                  {schule.SchulleiterVorname} {schule.SchulleiterName} <br />{schule.schulleiter_in}
-                </div>
-              </div>
-            </div>
-          </div>
-        </div>
-      </div>
-      <div class="footer klein">
-        <div class="schulnummer">
-          Schulnummer: {schule.SchulNr}
-        </div>
-        <hr class="hr-grau" />
-        <div class="footer-grid">
-          <div class="footer-left">
-            Notenstufen gemäß § 48 SchulG: 1 = sehr gut, 2 = gut, 3 = befriedigend, 4 = ausreichend, 5 = mangelhaft, 6 = ungenügend
-            <p></p>
-            <sup>1</sup>Der Unterricht in den modernen Fremdsprachen hat auf der
-            nach dem Fach in Klammern angegebenen Niveaustufe des
-            „Europäischen Referenzrahmens für Sprachen: Lernen, Lehren,
-            Beurteilen“ stattgefunden. Sind zwei Referenzniveaus ausgewiesen, ist
-            das niedrigere in vollem Umfang, das höhere in Anteilen erreicht. Bei
-            mindestens ausreichenden Leistungen wird der sprachliche
-            Kompetenzerwerb auf diesem Niveau bescheinigt.
-          </div>
-          <div class="footer-right">
-            Dem Zeugnis liegen zugrunde:
-            <ul class="list-unstyled dashes">
-              <li>
-                Die Verordnung über die Ausbildung und Prüfung in den
-                Bildungsgängen des Berufskollegs (Ausbildungs- und
-                Prüfungsordnung Berufskolleg, APO-BK) vom 26. Mai 1999 (SGV.
-                NRW. 223/BASS 13 – 33 Nr. 1.1).
-              </li>
-              <li>
-                die Rahmenvereinbarung über die Fachoberschulen (Beschluss
-                der Kultusministerkonferenz vom 16. Dezember 2004 in der
-                jeweils geltenden Fassung).
-              </li>
-            </ul>
-            <br>
-            Rechtsbehelfsbelehrung:
-            <br>Gegen dieses Zeugnis kann innerhalb eines Monats
-            nach Bekanntgabe des Zeugnisses Widerspruch eingelegt werden. Der Widerspruch
-            ist beim {schule.Bezeichnung2}, {schule.Strasse}, {schule.PLZ} {schule.Ort},
-            schriftlich oder zur Niederschrift zu erheben. <br />Falls die Frist durch
-            das Verschulden einer/eines Bevollmächtigten versäumt wird, wird dies
-            Verschulden der Widerspruchsführerin/dem Widerspruchsführer zugerechnet.
-          </div>
-        </div>
-      </div>
-    </div>
-  {/each}
-{/each}
-
-<script>
-export const kommentar = `
-[Anlage C](https://bass.schul-welt.de/3129.htm#13-33nr1.1p18_AnlageC)
-
-[Zeugnis nach Anlage C 10](https://bass.schul-welt.de/3129.htm#AnlageC10)
-
-__Achtung, das Ändern der Praxisnachweise gilt für alle Schüler im Dokument.__
-`
-  import { datum, bemerkungen, bg, note, noteInWorten }  from './helfer'
-
-  import Seitenlogo from './partials/Seitenlogo.html'
-  import Pageheader from './partials/Pageheader.html'
-  import Voffset from './partials/Voffset.html'
-  import Noten from './partials/Noten.html'
-
-  export let schueler, schule, privat, jahr, abschnitt
-  let selected = 0
-  let nachweise = [
-		'die erfolgreiche Ableistung des Praktikantenjahres im Rahmen der Klasse 11 der Fachoberschule',
-		'den erfolgreichen Abschluss einer mindestens zweijährigen Berufsausbildung',
-		'den Nachweis einer mindestens vierjährigen einschlägigen Berufstätigkeit als XXX'
-	]
-  const aktHalbjahrFuer = (s) => s.abschnitte.filter(a => a.Jahr === jahr && a.Abschnitt === abschnitt)
-</script>
-
-<style>
-  @import 'css/main.css';
-  @import 'css/a3-landscape.css';
-  .td-fach-note span {
-    background-color: #dcdcdc !important;
-    text-align: center;
-    width: 10rem;
-    display: block;
-  }
-  table {
-    border-collapse: collapse;
-  }
-</style>

+ 0 - 107
FS AGZ LF 2seitig.html

@@ -1,107 +0,0 @@
-{#each schueler as s (s.ID)}
-  {#each s.abschnitte.filter(aktHalbjahr) as hj (hj.ID)}
-    <div class="page grid" orientation="portrait" size="A4">
-      <Seitenlogo logo="{privat.traegerLogo}"/>
-      <Pageheader art="daten/agz.svg" logo="{privat.logo}" untertitel="{privat.untertitel}"/>
-      <div class="main">
-        <span style="font-size: 15pt; line-height: 1.5em">
-          {bg(s, 'Schulform')} |
-        </span>
-        <span style="font-size: 12pt; line-height: 1.2em">
-          {bg(s, 'Bereich')}
-        </span>
-        <Voffset v="1"/>
-        <b>{s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name},</b>
-        <br />geboren am {datum(s.Geburtsdatum)} in {s.Geburtsort},<br />
-        war vom {datum(s.BeginnBildungsgang)} bis {datum(s.Entlassdatum)} {s.studierende_r}
-        des Bildungsgangs {bg(s, 'Zeugniskopf')}.
-        <br>{s.Geschlecht === 3 ? 'Er':'Sie'} war zuletzt {s.studierende_r} in der Klasse {s.Klasse}.
-        <Voffset v="2"/>
-        Leistungen laut Konferenzbeschluss vom {datum(hj.Konferenzdatum)}:
-        <div class="lf-noten">
-          <Noten
-            noten={hj.noten}
-            fachGliederungen={s.fachklasse.fach_gliederungen}
-            ger
-            lernfeld
-            fachklasse={s.fachklasse.Kennung}
-            faechergruppenIds={[10,20,30]}
-          ></Noten>
-        </div>
-        <hr />
-        <Voffset v="1"/>
-        {#if zeigeVersetzungsvermerk}
-          <b>{versetzungsvermerk(hj)}</b>
-        {/if}
-        <button class="vbutton no-print" on:click="{() => zeigeVersetzungsvermerk = !zeigeVersetzungsvermerk}">
-          Versetzungsvermerk {zeigeVersetzungsvermerk ? 'entfernen' : 'anzeigen'}
-        </button>
-        <Voffset v="1"/>
-        <b>Bemerkungen</b><br />{@html bemerkungen(hj)}
-      </div>
-      <div class="footer">
-        <div class="flex-grid">
-          <div class="col-2">
-            {schule.Ort}, den {datum(hj.ZeugnisDatum)}
-          </div>
-          <div class="col text-center klein">
-          <Voffset v="3"/>
-            <hr />
-            {schule.SchulleiterVorname} {schule.SchulleiterName} <br />{schule.schulleiter_in}
-          </div>
-          <div class="col text-center klein">
-          <Voffset v="3"/>
-            Siegel
-          </div>
-          <div class="col text-center klein">
-          <Voffset v="3"/>
-            <hr />
-            {hj.lehrer.Vorname} {hj.lehrer.Nachname}<br />{hj.klassenlehrer_in}
-          </div>
-        </div>
-        <div class="klein eng">
-          <Voffset v="2"/>
-          <div class="schulnummer text-center">
-            Schulnummer: {schule.SchulNr}
-          </div>
-          <hr class="hr-grau" />
-          <div class="grau text-center">
-              Notenstufen gemäß § 48 SchulG: 1 = sehr gut, 2 = gut, 3 = befriedigend,
-              4 = ausreichend, 5 = mangelhaft, 6 = ungenügend
-          </div>
-        </div>
-      </div>
-    </div>
-    <Seite2Fussnote {schule} ger></Seite2Fussnote>
-  {/each}
-{/each}
-
-<script>
-  import { datum, versetzungsvermerk, volljaehrigBei, bemerkungen, bg }  from './helfer'
-
-  import Seitenlogo from './partials/Seitenlogo.html'
-  import Pageheader from './partials/Pageheader.html'
-  import Voffset from './partials/Voffset.html'
-  import Noten from './partials/Noten.html'
-  import Seite2Fussnote from './partials/Seite2Fussnoten.html'
-  export const kommentar = `
-[Vorlage PDF](https://bass.schul-welt.de/anlagen/3129-61.pdf)
-
-[VV dazu 15.2](https://bass.schul-welt.de/3129.htm#pgfId-3914969)
-  `
-
-  export let schueler, schule, privat, jahr, abschnitt
-  let zeigeVersetzungsvermerk = true
-  const aktHalbjahr = a => a.Jahr === jahr && a.Abschnitt === abschnitt
-</script>
-
-<style>
-  @import 'css/main.css';
-  .lf-noten {
-    font-size: 0.9rem;
-  }
-  .vbutton {
-    background-color: red;
-    color: white;
-  }
-</style>

+ 0 - 136
FS ASZ BPX.html

@@ -1,136 +0,0 @@
-{#each schueler as s}
-  {#each s.abschnitte.filter(aktHalbjahr) as hj (hj.ID)}
-    <div class="page grid" orientation="portrait" size="A4">
-      <Seitenlogo logo="{privat.traegerLogo}"/>
-      <Pageheader logo="{privat.logo}" untertitel="{privat.untertitel}"/>
-      <div class="main">
-        <h5>Abschlusszeugnis</h5>
-        <b>{s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name}</b>
-        <br />geboren am {datum(s.Geburtsdatum)} in {s.Geburtsort},
-        <br>war vom {datum(s.BeginnBildungsgang)} bis zur Aushändigung des Zeugnisses
-        {s.studierende_r} im Bildungsgang
-          <Voffset v="1"/>
-          <b>{bg(s, 'Zeugniskopf')}</b>
-        <Voffset v="1.5"/>
-        Der allgemeine Prüfungsausschuss stellte in seiner Abschlusskonferenz am {datum(hj.Konferenzdatum)} fest:
-        <Voffset v="1"/>
-        {s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name} hat das staatliche
-        <h5 class="text-center">{bg(s, 'Examen')}</h5>
-        <Voffset v="-2"/>
-        am {hj.noten.map(n => n.fach.FachKrz === 'KO' ? n.Lernentw : null).join('')} bestanden.<sup>1</sup>
-        <Voffset v="2"/>
-        <table class="table-noten" width="100%">
-          {#each s.bk_abschluss_faecher.filter(f => ['BLgesamt', 'KO', 'BPgesamt'].some(n => n === f.fach.FachKrz)) as f}
-          <tr>
-            <td class="{f.fach.FachKrz === 'BPgesamt' ? 'fett' : ''}">{f.fach.Zeugnisbez}</td>
-            <td class="td-fach-note"><span>{note(f.NoteAbschluss)}</span></td>
-          </tr>
-          {/each}
-        </table>
-        <Voffset v="1"/>
-        {s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name} ist berechtigt, die Berufsbezeichnung
-        <h5 class="text-center">{bg(s, (s.Geschlecht === 3 ? 'Berufsbezeichnung_m' : 'Berufsbezeichnung_w'))}</h5>
-        <Voffset v="-1.5"/>
-        zu führen.
-        <Voffset v="1"/>
-        Der Abschluss ist im Deutschen und Europäischen Qualifikationsrahmen dem Niveau {s.fachklasse.DQR_Niveau} zugeordnet.
-        <Voffset v="5"/>
-        {schule.Ort}, den {datum(hj.ZeugnisDatum)}
-        <Voffset v="4"/>
-        <div class="flex-grid">
-          <div class="col">
-            <hr />
-            <div class="text-center klein">
-              {schule.SchulleiterVorname} {schule.SchulleiterName} – Vorsitzende{schule.SchulleiterGeschlecht === 3 ? 'r':''} des allgemeinen
-              <br />Prüfungsausschusses
-            </div>
-          </div>
-          <div class="col klein">
-            <div class="text-center klein">
-              Siegel
-            </div>
-          </div>
-          <div class="col klein">
-            <hr />
-            <div class="text-center">
-              {schule.SchulleiterVorname} {schule.SchulleiterName} <br />{schule.schulleiter_in}
-            </div>
-          </div>
-        </div>
-        <Voffset v="2"/>
-      </div>
-      <div class="footer klein">
-        <div class="klein eng">
-          <Voffset v="2"/>
-          <div class="schulnummer">
-            Schulnummer: {schule.SchulNr}
-          </div>
-          <hr class="hr-grau" />
-          <div class="grau">
-            Notenstufen gemäß § 48 SchulG: 1 = sehr gut, 2 = gut, 3 = befriedigend,
-            4 = ausreichend, 5 = mangelhaft, 6 = ungenügend
-            <Voffset v=".5"/>
-            <sup>1</sup>Gilt nur in Verbindung mit der Bescheinigung über die
-            erfolgreich abgelegte fachtheoretischen Prüfung (Teil I) und dem
-            Versetzungszeugnis, welches die Berechtigung zum Übergang in das
-            Berufspraktikum ausweist, ausgestellt am {s.vermerke.find(v => v.Vermerkart_ID === 8).Bemerkung}
-            vom {s.vermerke.find(v => v.Vermerkart_ID === 9).Bemerkung}
-            <Voffset v=".5"/>
-            Dem Zeugnis liegen zugrunde: Die Verordnung über die Ausbildung und Prüfung
-            in den Bildungsgängen des Berufskollegs (Ausbildungs- und Prüfungsordnung
-            Berufskolleg, APO-BK) vom 26. Mai 1999 (SGV. NRW. 223/BASS 13 – 33 Nr. 1.1).
-            <br>Die Vereinbarung über Fachschulen (Beschluss der
-            Kultusministerkonferenz vom 07. November 2002 in der jeweils geltenden
-            Fassung).
-            <br>Abschluss der Fachschule entspricht der Rahmenvereinbarung über
-            Fachschulen (Beschluss der Kultusministerkonferenz vom 07.11.2002 in
-            der jeweils geltenden Fassung) und wird von allen Ländern in der
-            Bundesrepublik Deutschland anerkannt.
-            <Voffset v=".5"/>
-            Rechtsbehelfsbelehrung: Gegen dieses Zeugnis kann innerhalb eines Monats
-            nach Bekanntgabe des Zeugnisses Widerspruch eingelegt werden. Der Widerspruch
-            ist beim {schule.Bezeichnung2}, {schule.Strasse}, {schule.PLZ} {schule.Ort},
-            schriftlich oder zur Niederschrift zu erheben. <br />Falls die Frist durch
-            das Verschulden einer/eines Bevollmächtigten versäumt wird, wird dieses
-            Verschulden der Widerspruchsführerin/dem Widerspruchsführer zugerechnet.
-          </div>
-        </div>
-      </div>
-    </div>
-  {/each}
-{/each}
-
-<script>
-  export let kommentar = `
-[E5 PDF](https://bass.schul-welt.de/anlagen/3129-60.pdf)
-[E5 html]()
-`
-  export let schueler, schule, privat, jahr, abschnitt
-  import { datum, bg, note } from './helfer'
-  import Seitenlogo from './partials/Seitenlogo.html'
-  import Pageheader from './partials/Pageheader.html'
-  import Voffset from './partials/Voffset.html'
-  import Fussnote from './partials/Fussnoten.html'
-  const aktHalbjahr = (a) => a.Jahr === jahr && a.Abschnitt === abschnitt
-  const findeFach = (hj, as) => hj.noten.find(n => n.fach.ID === as.fach.ID) || { Lernentw: 'undefined' }
-</script>
-
-<style>
-  @import 'css/main.css';
-  .td-fach-note {
-    padding-bottom: .2rem;
-    padding-top: .2rem;
-    width: 12rem;
-  }
-  .td-fach-note span {
-    background-color: #dcdcdc !important;
-    text-align: center;
-    width: 10rem;
-    display: block;
-    margin: 0 auto;
-  }
-</style>
-
-
-
-

+ 0 - 151
FS ASZ Pferd.html

@@ -1,151 +0,0 @@
-{#each schueler as s (s.ID)}
-  {#each aktHalbjahrFuer(s) as hj (hj.ID)}
-    <div class="page grid" orientation="landscape" size="A3" style="font-size: 1.1rem">
-      <div class="header">
-        <Seitenlogo logo="{privat.traegerLogo}"/>
-        <Pageheader art="daten/asz.svg" logo="{privat.logo}" untertitel="{privat.untertitel}"/>
-      </div>
-      <div class="main-grid">
-        <div class="main-left">
-          <Voffset v="2"/>
-          <b>{s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name},</b>
-          <br />geboren am {datum(s.Geburtsdatum)} in {s.Geburtsort},
-          <br />war vom {datum(s.Aufnahmedatum)} bis zur Aushändigung des Zeugnisses {s.studierende_r} des Bildungsgangs
-          <br /><b>{@html bg(s, 'Zeugniskopf')}</b>
-          <br>in Kooperation mit dem Deutschen Kuratorium für Therapeutisches Reiten e.V. (DKThR).
-          <Voffset v="1"/>
-          Der allgemeine Prüfungsausschuss stellte in seiner Abschlusskonferenz am {datum(hj.Konferenzdatum)} fest:
-          <Voffset v=".5"/>
-          <b>Leistungen</b>
-          <Noten
-            noten={hj.noten}
-            faechergruppenIds={[10, 20, 30]}
-            fachGliederungen={s.fachklasse.fach_gliederungen}
-            fachklasse={s.fachklasse.Kennung}
-          ></Noten>
-          <hr />
-          <b>Bemerkungen</b>
-          <br />{@html bemerkungen(hj)}
-        </div>
-        <div class="main-right">
-          <Voffset v="2"/>
-          {s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name} erbrachte in der Abschlussprüfung folgende Leistung:
-          <Voffset v="2"/>
-          <table class="table-noten" width="100%">
-            {#each hj.noten.filter(f => f.fach.FachKrz === "PROJ-PF") as f}
-              <tr>
-                <td width="22%">{f.fach.Zeugnisbez}</td>
-                <td class="td-padding-extra">{f.Lernentw}</td>
-                <td class="td-fach-note"><span>{note(f.NotenKrz)}</span></td>
-              </tr>
-            {/each}
-          </table>
-          <Voffset v="1"/>
-          <Voffset v="4"/>
-          {s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name} ist berechtigt, die Berufsbezeichnung
-          <h4 class="text-center">{@html s.berufsbezeichnung_mw}</h4>
-          zu führen.
-          <Voffset v="1"/>
-          Der Abschluss ist im Deutschen und Europäischen Qualifikationsrahmen dem Niveau {s.fachklasse.DQR_Niveau} zugeordnet.
-          <Voffset v="9"/>
-          <div class="flex-grid">
-            <Voffset v="6"/>
-            <div class="col">
-              {schule.Ort}, den {datum(hj.ZeugnisDatum)}
-              <Voffset v="6"/>
-              <div class="text-center klein">Siegel</div>
-            </div>
-            <div class="col">
-              <hr />
-              <div class="text-center klein">
-                {schule.SchulleiterVorname} {schule.SchulleiterName}
-                <br>Vorsitzende{schule.SchulleiterGeschlecht === 3 ? 'r':''} des allg. Prüfungsausschusses
-              </div>
-              <Voffset v="6"/>
-              <hr />
-              <div class="text-center klein">
-                {schule.SchulleiterVorname} {schule.SchulleiterName} <br />{schule.schulleiter_in}
-              </div>
-              <Voffset v="6"/>
-              <hr />
-              <div class="text-center klein">
-                Weiterbildung DKThR
-              </div>
-            </div>
-          </div>
-        </div>
-      </div>
-      <div class="footer-grid klein eng">
-        <div class="header">
-          Schulnummer: {schule.SchulNr}
-          <hr />
-        </div>
-        <div class="footer-left">
-          Notenstufen gemäß § 48 SchulG: 1 = sehr gut, 2 = gut, 3 = befriedigend, 4 = ausreichend, 5 = mangelhaft, 6 = ungenügend
-          <p></p>
-          Dem Zeugnis liegen zugrunde:
-          <ul class="list-unstyled dashes">
-            <li>
-              Die Verordnung über die Ausbildung und Prüfung in den Bildungsgängen
-              des Berufskollegs (Ausbildungs- und Prüfungsordnung Berufskolleg,
-              APO-BK) vom 26. Mai 1999 (SGV. NRW. 223/BASS 13 – 33 Nr. 1.1).
-            </li>
-            <li>
-              Die Vereinbarung über Fachschulen (Beschluss der Kultusministerkonferenz
-              vom 07. November 2002 in der jeweils geltenden Fassung).
-            </li>
-          </ul>
-        </div>
-        <div class="footer-right">
-          Rechtsbehelfsbelehrung:<br>
-          Gegen dieses Zeugnis kann innerhalb eines Monats
-          nach Bekanntgabe des Zeugnisses Widerspruch eingelegt werden. Der Widerspruch
-          ist beim {schule.Bezeichnung2}, {schule.Strasse}, {schule.PLZ} {schule.Ort},
-          schriftlich oder zur Niederschrift zu erheben. <br />Falls die Frist durch
-          das Verschulden einer/eines Bevollmächtigten versäumt wird, wird dies
-          Verschulden der Widerspruchsführerin/dem Widerspruchsführer zugerechnet.
-        </div>
-      </div>
-    </div>
-  {/each}
-{/each}
-
-<script>
-export let kommentar = `
-[E5 PDF](https://bass.schul-welt.de/anlagen/3129-60.pdf)
-[E5 html]()
-`
-  import { datum, bemerkungen, bg, note }  from './helfer'
-
-  import Seitenlogo from './partials/Seitenlogo.html'
-  import Pageheader from './partials/Pageheader.html'
-  import Voffset from './partials/Voffset.html'
-  import Noten from './partials/Noten.html'
-
-  export let schueler, schule, privat, jahr, abschnitt
-
-  const aktHalbjahrFuer = (s) => s.abschnitte.filter(a => a.Jahr === jahr && a.Abschnitt === abschnitt)
-</script>
-
-<style>
-  @import 'css/main.css';
-  @import 'css/a3-landscape.css';
-  .table-noten {
-    width: 100%;
-    border-collapse: collapse;
-    margin-bottom: 1rem;
-  }
-  .td-fach-note {
-    padding-bottom: .2rem;
-    padding-top: .2rem;
-    width: 12rem;
-  }
-  .td-fach-note span {
-    background-color: #dcdcdc;
-    text-align: center;
-    width: 10rem;
-    display: block;
-    margin: 0 auto;
-  }
-</style>
-

+ 0 - 172
FS ASZ.html

@@ -1,172 +0,0 @@
-{#each schueler as s (s.ID)}
-  {#each aktHalbjahrFuer(s) as hj (hj.ID)}
-    <div class="page grid" orientation="landscape" size="A3">
-      <Seitenlogo logo="{privat.traegerLogo}"/>
-      <Pageheader art="daten/asz.svg" logo="{privat.logo}" untertitel="{privat.untertitel}"/>
-      <div class="main">
-        <div class="main-grid">
-          <Voffset v="1"/>
-          <div class="main-left">
-            <b>{s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name},</b>
-            <br />geboren am {datum(s.Geburtsdatum)} in {s.Geburtsort},
-            <br />war vom {datum(s.Aufnahmedatum)} bis zur Aushändigung des Zeugnisses {s.studierende_r} des Bildungsgangs
-            <br /><b>{bg(s, 'Zeugniskopf')}.</b>
-            <Voffset v=".5"/>
-            Der allgemeine Prüfungsausschuss stellte in seiner Abschlusskonferenz am {datum(hj.Konferenzdatum)} fest:
-            <Voffset v=".5"/>
-            <b>Leistungen</b>
-            <div style="font-size: 90%">
-              <Noten
-                noten={hj.noten}
-                faechergruppenIds={[10, 20, 30]}
-                fachGliederungen={s.fachklasse.fach_gliederungen}
-                ger
-                lernfeld
-                fachklasse={s.fachklasse.Kennung}
-                fhrSternchen={s.DurchschnittsnoteFHR ? true: false}
-              ></Noten>
-            </div>
-            <hr />
-            <b>Bemerkungen</b>
-            <br />{@html bemerkungen(hj)}
-          </div>
-          <div class="main-right">
-            {s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name} hat das staatliche
-            <h5 class="text-center">{bg(s, 'Examen')}</h5>
-            <Voffset v="-2"/>
-            am {hj.noten.map(n => n.fach.FachKrz === 'KO' ? n.Lernentw : null).join('')} bestanden.
-            <Voffset v="2"/>
-            <table class="table-noten">
-              {#each s.bk_abschluss_faecher.filter(f => f.fach.FachKrz.startsWith('AS')).sort((a,b) => a.FSortierung > b.FSortierung ? 1:-1) as as}
-                <tr>
-                  <td width="22%">{as.fach.Zeugnisbez}</td>
-                  <td class="td-padding-extra">{findeFach(hj, as).Lernentw}</td>
-                  <td class="td-fach-note"><span>{note(as.NoteAbschluss)}</span></td>
-                </tr>
-              {/each}
-            </table>
-            <Voffset v="1"/>
-            <table class="table-noten" width="100%">
-              {#each s.bk_abschluss_faecher.filter(f => ['BLgesamt', 'KO', 'BPgesamt'].some(n => n === f.fach.FachKrz)).sort((a, b) => a.FSortierung < b.FSortierung ? -1 : 1) as f}
-                <tr>
-                  <td class="{f.fach.FachKrz === 'BPgesamt' ? 'fett' : ''}">{f.fach.Zeugnisbez}</td>
-                  <td class="td-fach-note"><span>{note(f.NoteAbschluss)}</span></td>
-                </tr>
-              {/each}
-            </table>
-            <Voffset v="4"/>
-            {s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name} ist berechtigt, die Berufsbezeichnung
-            <h5 class="text-center">{bg(s, (s.Geschlecht === 3 ? 'Berufsbezeichnung_m' : 'Berufsbezeichnung_w'))}</h5>
-            <Voffset v="-2"/>
-            zu führen.
-            <Voffset v="1"/>
-            Der Abschluss ist im Deutschen und Europäischen Qualifikationsrahmen dem Niveau {s.fachklasse.DQR_Niveau} zugeordnet.
-            <Voffset v="5"/>
-            {schule.Ort}, den {datum(hj.ZeugnisDatum)}
-            <Voffset v="5"/>
-            <div class="flex-grid">
-              <div class="col">
-                <hr />
-                <div class="text-center klein">
-                  {schule.SchulleiterVorname} {schule.SchulleiterName} – Vorsitzende{schule.SchulleiterGeschlecht === 3 ? 'r':''} des allgemeinen
-                  <br />Prüfungsausschusses
-                </div>
-              </div>
-              <div class="col klein">
-                <div class="text-center klein">
-                  Siegel
-                </div>
-              </div>
-              <div class="col klein">
-                <hr />
-                <div class="text-center">
-                  {schule.SchulleiterVorname} {schule.SchulleiterName} <br />{schule.schulleiter_in}
-                </div>
-              </div>
-            </div>
-          </div>
-        </div>
-      </div>
-      <div class="footer klein grau">
-        <div class="schulnummer">
-          Schulnummer: {schule.SchulNr}
-        </div>
-        <hr class="hr-grau" />
-        <div class="footer-grid">
-          <div class="footer-left">
-            Notenstufen gemäß § 48 SchulG: 1 = sehr gut, 2 = gut, 3 = befriedigend, 4 = ausreichend, 5 = mangelhaft, 6 = ungenügend
-            <Voffset v="0.5"/>
-            <sup>1</sup>Der Unterricht in den modernen Fremdsprachen hat auf der
-            nach dem Fach in Klammern angegebenen Niveaustufe des
-            „Europäischen Referenzrahmens für Sprachen: Lernen, Lehren,
-            Beurteilen“ stattgefunden. Sind zwei Referenzniveaus ausgewiesen, ist
-            das niedrigere in vollem Umfang, das höhere in Anteilen erreicht. Bei
-            mindestens ausreichenden Leistungen wird der sprachliche
-            Kompetenzerwerb auf diesem Niveau bescheinigt.
-            <Voffset v="0.5"/>
-            {#if s.DurchschnittsnoteFHR}
-              <sup>*</sup>Die Noten der gekennzeichneten Fächer gehen in die
-              Berechnung der Durchnittsnote für die Fachochschulreife ein.
-            {/if}
-          </div>
-          <div class="footer-right">
-            Dem Zeugnis liegen zugrunde:
-            <ul class="list-unstyled dashes">
-              <li>
-                Die Verordnung über die Ausbildung und Prüfung in den Bildungsgängen des Berufskollegs (Ausbildungs- und Prüfungsordnung Berufskolleg, APO-BK) vom 26. Mai 1999 (SGV. NRW. 223/BASS 13 – 33 Nr. 1.1).
-              </li>
-              <li>
-                Die Vereinbarung über Fachschulen (Beschluss der Kultusministerkonferenz vom 07. November 2002 in der jeweils geltenden Fassung).
-              </li>
-            </ul>
-            <br>
-            Rechtsbehelfsbelehrung:
-            Gegen dieses Zeugnis kann innerhalb eines Monats
-            nach Bekanntgabe des Zeugnisses Widerspruch eingelegt werden. Der Widerspruch
-            ist beim {schule.Bezeichnung2}, {schule.Strasse}, {schule.PLZ} {schule.Ort},
-            schriftlich oder zur Niederschrift zu erheben. <br />Falls die Frist durch
-            das Verschulden einer/eines Bevollmächtigten versäumt wird, wird dies
-            Verschulden der Widerspruchsführerin/dem Widerspruchsführer zugerechnet.
-          </div>
-        </div>
-      </div>
-    </div>
-  {/each}
-{/each}
-
-<script>
-export let kommentar = `
-[E5 PDF](https://bass.schul-welt.de/anlagen/3129-60.pdf)
-[E5 html]()
-`
-  import { datum, volljaehrigBei, bemerkungen, bg, note }  from './helfer'
-
-  import Seitenlogo from './partials/Seitenlogo.html'
-  import Pageheader from './partials/Pageheader.html'
-  import Voffset from './partials/Voffset.html'
-  import Noten from './partials/Noten.html'
-
-  export let schueler, schule, privat, jahr, abschnitt
-  const aktHalbjahrFuer = (s) => s.abschnitte.filter(a => a.Jahr === jahr && a.Abschnitt === abschnitt)
-  const findeFach = (hj, as) => hj.noten.find(n => n.fach.ID === as.fach.ID) || { Lernentw: 'undefined' }
-</script>
-
-<style>
-  @import 'css/main.css';
-  @import 'css/a3-landscape.css';
-  .td-padding-extra {
-    padding: 2mm 0 2mm 0;
-  }
-  .td-fach-note {
-    padding-bottom: .2rem;
-    padding-top: .2rem;
-    width: 12rem;
-  }
-  .td-fach-note span {
-    background-color: #dcdcdc !important;
-    text-align: center;
-    width: 10rem;
-    display: block;
-    margin: 0 auto;
-  }
-</style>

+ 0 - 88
FS Bescheinigung Bewerbung.html

@@ -1,88 +0,0 @@
-{#each schueler as s}
-  {#each s.abschnitte.filter(aktHalbjahr) as hj (hj.ID)}
-  <div class="page grid" orientation="portrait" size="A4">
-    <Seitenlogo logo="{privat.traegerLogo}"/>
-    <Pageheader logo="{privat.logo}" untertitel="{privat.untertitel}"/>
-    <div class="main">
-      <h5>Anlage zum Jahreszeugnis</h5>
-      <Voffset v="-1.5"/>
-      Bescheinigung für Bewerbungszwecke
-      <Voffset v="3"/>
-      <b>{s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name}</b>
-      <br />geboren am {datum(s.Geburtsdatum)} in {s.Geburtsort}
-      <Voffset v="2"/>
-      besucht seit dem {datum(s.BeginnBildungsgang)} die Fachschule für Sozialwesen in der
-      {bg(s, 'Bereich')} und hat laut Beschluss des allgemeinen
-      Prüfungsausschusses den theoretischen Prüfungsteil des Fachschulexamens
-      bestanden. {s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name} hat damit die Berechtigung zum Übergang
-      in das Berufspraktikum erworben.
-      <Voffset v="2"/>
-      Der allgemeine Prüfungsausschuss stellte in seiner Abschlusskonferenz am {datum(hj.Konferenzdatum)} fest:
-      <Voffset v="1"/>
-      <b>Theoretischer Prüfungsteil des Fachschulexamens</b>
-      <Voffset v="1"/>
-      <table class="table-noten">
-        {#each s.bk_abschluss_faecher.filter(f => f.fach.FachKrz.startsWith('AS')) as as}
-          <tr>
-            <td width="22%" style="height:4rem">{as.fach.Zeugnisbez}</td>
-            <td class="td-padding-extra">{findeFach(hj, as).Lernentw}</td>
-            <td class="td-fach-note"><span>{note(as.NoteAbschluss)}</span></td>
-          </tr>
-        {/each}
-      </table>
-      <Voffset v="9"/>
-      <div class="flex-grid">
-        <div class="col">
-          {schule.Ort}, den {datum(hj.Konferenzdatum)}
-        </div>
-        <div class="col">
-          <Voffset v="3"/>
-          <div class="text-center klein">Siegel</div>
-        </div>
-        <div class="col">
-          <Voffset v="6"/>
-          <hr />
-          <div class="text-center klein">
-            {schule.SchulleiterVorname} {schule.SchulleiterName}
-            <br />Vorsitzender des allgemeinen Prüfungsausschusses
-          </div>
-          </div>
-      </div>
-      <Voffset v="2"/>
-    </div>
-    <div class="footer klein" style="text-align:right">
-      Schulnummer: {schule.SchulNr}
-    </div>
-  </div>
-{/each}
-{/each}
-
-<script>
-  export let schueler, schule, privat, jahr, abschnitt
-  import { datum, bg, note } from './helfer'
-  import Seitenlogo from './partials/Seitenlogo.html'
-  import Pageheader from './partials/Pageheader.html'
-  import Voffset from './partials/Voffset.html'
-  const aktHalbjahr = (a) => a.Jahr === jahr && a.Abschnitt === abschnitt
-  const findeFach = (hj, as) => hj.noten.find(n => n.fach.ID === as.fach.ID) || { Lernentw: 'undefined' }
-</script>
-
-<style>
-  @import 'css/main.css';
-  .td-fach-note {
-    padding-bottom: .2rem;
-    padding-top: .2rem;
-    width: 12rem;
-  }
-  .td-fach-note span {
-    background-color: #dcdcdc !important;
-    text-align: center;
-    width: 10rem;
-    display: block;
-    margin: 0 auto;
-  }
-</style>
-
-
-
-

+ 0 - 121
FS FHR.html

@@ -1,121 +0,0 @@
-{#each schueler.filter(s => s.DurchschnittsnoteFHR) as s}
-  {#each s.abschnitte.filter(aktHalbjahr) as hj (hj.ID)}
-    <div class="page grid" orientation="portrait" size="A4">
-      <Seitenlogo logo="{privat.traegerLogo}"/>
-      <Pageheader logo="{privat.logo}" untertitel="{privat.untertitel}"/>
-      <div class="main">
-        <h5>Zeugnis der Fachhochschulreife</h5>
-        Der allgemeine Prüfungsausschuss stellte in seiner Abschlusskonferenz am {datum(hj.Konferenzdatum)} folgende Leistungen fest<sup>1</sup>:
-        <Voffset v="1"/>
-        Mathematisch-naturwissenschaftlicher-technischer Bereich: {note(s.bk_abschluss_faecher.find(f => f.fach.FachKrz === 'MFHR').NoteAbschluss)}
-        <Voffset v="1"/>
-        <b>{s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name}</b> hat die Fachhochschulreifeprüfung im Bildungsgang
-          {bg(s, 'Zeugniskopf')} am {datum(hj.Konferenzdatum)} bestanden.
-          {s.anrede}{s.Geschlecht === 3 ? 'n':''} {s.Vorname} {s.Zusatz || ''} {s.Name} wird die
-        <Voffset v="1"/>
-          <div class="text-center">
-            <h5>Fachhochschulreife</h5>
-          </div>
-        <Voffset v="-1.5"/>
-          zuerkannt.
-          <Voffset v="1"/>
-          Entsprechend der Vereinbarung über den Erwerb einer Fachhochschulreife
-          in beruflichen Bildungsgängen – Beschluss der Kultusministerkonferenz vom
-          5. Juni 1998 in der jeweils geltenden Fassung – berechtigt dieses Zeugnis in allen
-          Ländern der Bundesrepublik Deutschland zum Studium an Fachhochschulen und
-          entsprechender Studiengänge an Universitäten.
-          <Voffset v="1"/>
-        <table class="table-noten">
-          <tr>
-                <td>Durchschnittsnote:</td><td class="td-fach-note"><span>{s.DurchschnittsnoteFHR}</span></td>
-                <td>in&nbsp;Worten:</td><td class="td-fach-note"><span>{@html noteInWorten(s.DurchschnittsnoteFHR)}</span></td>
-          </tr>
-        </table>
-        <Voffset v="5"/>
-        {schule.Ort}, den {datum(hj.ZeugnisDatum)}
-        <Voffset v="4"/>
-        <div class="flex-grid">
-          <div class="col">
-            <hr />
-            <div class="text-center klein">
-              {schule.SchulleiterVorname} {schule.SchulleiterName} – Vorsitzende{schule.SchulleiterGeschlecht === 3 ? 'r':''} des allgemeinen
-              <br />Prüfungsausschusses
-            </div>
-          </div>
-          <div class="col klein">
-            <div class="text-center klein">
-              Siegel
-            </div>
-          </div>
-          <div class="col klein">
-            <hr />
-            <div class="text-center">
-              {schule.SchulleiterVorname} {schule.SchulleiterName} <br />{schule.schulleiter_in}
-            </div>
-          </div>
-        </div>
-        <Voffset v="2"/>
-      </div>
-      <div class="footer klein">
-        <div class="klein eng">
-          <Voffset v="2"/>
-          <div class="schulnummer">
-            Schulnummer: {schule.SchulNr}
-          </div>
-          <hr class="hr-grau" />
-          <div class="grau">
-            <sup>1</sup>Die Fächer
-            {s.bk_abschluss_faecher.filter(f => f.fach.GewichtungFHR > 0)
-              .sort((a,b) => a.FSortierung > b.FSortierung ? 1 : -1)
-              .map(f => f.fach.Zeugnisbez)
-              .join(', ')
-              .replace(/, \ sowie/g, ' sowie')}
-            gehen in die Berechnung der Durchnittsnote für die Fachhochschulreife ein.
-            <Voffset v=".5"/>
-            Rechtsbehelfsbelehrung: Gegen dieses Zeugnis kann innerhalb eines Monats
-            nach Bekanntgabe des Zeugnisses Widerspruch eingelegt werden. Der Widerspruch
-            ist beim {schule.Bezeichnung2}, {schule.Strasse}, {schule.PLZ} {schule.Ort},
-            schriftlich oder zur Niederschrift zu erheben. <br />Falls die Frist durch
-            das Verschulden einer/eines Bevollmächtigten versäumt wird, wird dieses
-            Verschulden der Widerspruchsführerin/dem Widerspruchsführer zugerechnet.
-          </div>
-        </div>
-      </div>
-    </div>
-  {/each}
-{/each}
-
-<script>
-  export let kommentar = `
-[E7 html](https://bass.schul-welt.de/3129.htm#pgfId-2875772)
-[VV zu §16](https://bass.schul-welt.de/3129.htm#13-33nr1.1p16_AnlageE)
-`
-  export let schueler, schule, privat, jahr, abschnitt
-  import { datum, bg, note, noteInWorten } from './helfer'
-  import Seitenlogo from './partials/Seitenlogo.html'
-  import Pageheader from './partials/Pageheader.html'
-  import Voffset from './partials/Voffset.html'
-  import Fussnote from './partials/Fussnoten.html'
-  const aktHalbjahr = (a) => a.Jahr === jahr && a.Abschnitt === abschnitt
-  const findeFach = (hj, as) => hj.noten.find(n => n.fach.ID === as.fach.ID) || { Lernentw: 'undefined' }
-</script>
-
-<style>
-  @import 'css/main.css';
-  .td-fach-note {
-    padding-bottom: .2rem;
-    padding-top: .2rem;
-    width: 12rem;
-  }
-  .td-fach-note span {
-    background-color: #dcdcdc !important;
-    text-align: center;
-    width: 10rem;
-    display: block;
-    margin: 0 auto;
-  }
-</style>
-
-
-
-

+ 0 - 64
FS HJZ LF.html

@@ -1,64 +0,0 @@
-{#each schueler as s (s.ID)}
-  {#each s.abschnitte.filter(aktHalbjahr) as hj (hj.ID)}
-    <div class="page grid" orientation="portrait" size="A4">
-      <Seitenlogo logo="{privat.traegerLogo}"/>
-      <Pageheader art="daten/zeugnis.svg" logo="{privat.logo}" untertitel="{privat.untertitel}"/>
-      <div class="main">
-        <div style="font-size: 15pt; line-height: 1.5em">
-          {bg(s, 'Schulform')}
-        </div>
-        <div style="font-size: 12pt; line-height: 1.2em">
-          {bg(s, 'Bereich')}
-        </div>
-        <Voffset v="1"/>
-        <b>{s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name},</b>
-        <br />geboren am {datum(s.Geburtsdatum)} in {s.Geburtsort},<br />
-        besuchte im Schuljahr {hj.schuljahr} die Klasse {hj.Klasse}
-        <Voffset v="2"/>
-        Leistungen laut Konferenzbeschluss vom {datum(hj.Konferenzdatum)}:
-        <div class="lf-noten">
-          <Noten lernfeld noten={hj.noten} fachGliederungen={s.fachklasse.fach_gliederungen}></Noten>
-        </div>
-        <hr />
-        <b>Bemerkungen</b><br />{@html bemerkungen(hj)}
-      </div>
-      <div class="footer">
-        <div class="flex-grid">
-          <div class="col-2">
-            {schule.Ort}, den {datum(hj.ZeugnisDatum)}
-          </div>
-          <div class="col text-center klein">
-            <Voffset v="3"/>
-            <hr />
-            {hj.lehrer.Vorname} {hj.lehrer.Nachname}<br />{hj.klassenlehrer_in}
-          </div>
-          <div class="col text-center klein">
-            <Voffset v="3"/>
-            Siegel
-          </div>
-        </div>
-        <Fussnote schule={schule}></Fussnote>
-      </div>
-    </div>
-  {/each}
-{/each}
-
-<script>
-  import { datum, versetzungsvermerk, volljaehrigBei, bemerkungen, bg }  from './helfer'
-
-  import Seitenlogo from './partials/Seitenlogo.html'
-  import Pageheader from './partials/Pageheader.html'
-  import Voffset from './partials/Voffset.html'
-  import Noten from './partials/Noten.html'
-  import Fussnote from './partials/Fussnoten.html'
-
-  export let schueler, schule, privat, jahr, abschnitt
-  const aktHalbjahr = a => a.Jahr === jahr && a.Abschnitt === abschnitt
-</script>
-
-<style>
-  @import 'css/main.css';
-  .lf-noten {
-    font-size: 0.9rem;
-  }
-</style>

+ 0 - 73
FS JZ LF.html

@@ -1,73 +0,0 @@
-{#each schueler as s (s.ID)}
-  {#each s.abschnitte.filter(aktHalbjahr) as hj (hj.ID)}
-    <div class="page grid" orientation="portrait" size="A4">
-      <Seitenlogo logo="{privat.traegerLogo}"/>
-      <Pageheader art="daten/zeugnis.svg" logo="{privat.logo}" untertitel="{privat.untertitel}"/>
-      <div class="main">
-        <div style="font-size: 15pt; line-height: 1.5em">
-          {bg(s, 'Schulform')}
-        </div>
-        <div style="font-size: 12pt; line-height: 1.2em">
-          {bg(s, 'Bereich')}
-        </div>
-        <Voffset v="1"/>
-        <b>{s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name},</b>
-        <br />geboren am {datum(s.Geburtsdatum)} in {s.Geburtsort},<br />
-        {#if s.ASDSchulform.startsWith('E')}
-          besuchte das Schuljahr {hj.schuljahr} in der Klasse {hj.Klasse}
-        {:else}
-          besuchte im {hj.Abschnitt}. Halbjahr des Schuljahres {hj.schuljahr} die Klasse {hj.Klasse}
-        {/if}
-        <Voffset v="2"/>
-        Leistungen laut Konferenzbeschluss vom {datum(hj.Konferenzdatum)}:
-        <Noten lernfeld noten={hj.noten} fachGliederungen={s.fachklasse.fach_gliederungen}></Noten>
-        <hr />
-        <Voffset v="1"/>
-        <b>{versetzungsvermerk(hj)}</b>
-        <Voffset v="1"/>
-        <b>Bemerkungen</b><br />{@html bemerkungen(hj)}
-      </div>
-      <div class="footer">
-        <div class="flex-grid">
-          <div class="col-2">
-            {schule.Ort}, den {datum(hj.ZeugnisDatum)}
-          </div>
-          <div class="col text-center klein">
-          <Voffset v="3"/>
-            <hr />
-            {schule.SchulleiterVorname} {schule.SchulleiterName} <br />{schule.schulleiter_in}
-          </div>
-          <div class="col text-center klein">
-          <Voffset v="3"/>
-            Siegel
-          </div>
-          <div class="col text-center klein">
-          <Voffset v="3"/>
-            <hr />
-            {hj.lehrer.Vorname} {hj.lehrer.Nachname}<br />{hj.klassenlehrer_in}
-          </div>
-        </div>
-        <div class="flex-grid">
-        </div>
-        <Fussnote schule={schule}></Fussnote>
-      </div>
-    </div>
-  {/each}
-{/each}
-
-<script>
-  import { datum, versetzungsvermerk, volljaehrigBei, bemerkungen, bg }  from './helfer'
-
-  import Seitenlogo from './partials/Seitenlogo.html'
-  import Pageheader from './partials/Pageheader.html'
-  import Voffset from './partials/Voffset.html'
-  import Noten from './partials/Noten.html'
-  import Fussnote from './partials/Fussnoten.html'
-
-  export let schueler, schule, privat, jahr, abschnitt
-  const aktHalbjahr = a => a.Jahr === jahr && a.Abschnitt === abschnitt
-</script>
-
-<style>
-  @import 'css/main.css';
-</style>

+ 0 - 100
FS JZ Übergang BP.html

@@ -1,100 +0,0 @@
-{#each schueler as s (s.ID)}
-  {#each s.abschnitte.filter(aktHalbjahr) as hj (hj.ID)}
-    <div class="page grid" orientation="portrait" size="A4" style="font-size: 1.0rem">
-      <Seitenlogo logo="{privat.traegerLogo}"/>
-      <Pageheader art="daten/zeugnis.svg" logo="{privat.logo}" untertitel="{privat.untertitel}"/>
-      <div class="main">
-        <span style="font-size: 15pt; line-height: 1.5em">
-          {bg(s, 'Schulform')} |
-        </span>
-        <span style="font-size: 12pt; line-height: 1.2em">
-          {bg(s, 'Bereich')}
-        </span>
-        <Voffset v="1"/>
-        <b>{s.anrede} {s.Vorname} {s.Zusatz || ''} {s.Name},</b>
-        <br />geboren am {datum(s.Geburtsdatum)} in {s.Geburtsort}, besuchte im Schuljahr {hj.schuljahr} die Klasse {hj.Klasse}
-        <Voffset v="2"/>
-        Leistungen laut Konferenzbeschluss vom {datum(hj.Konferenzdatum)}:
-        <div class="lf-noten" style="font-size: 0.9rem">
-          <Noten
-            noten={hj.noten}
-            fachGliederungen={s.fachklasse.fach_gliederungen}
-            lernfeld
-            fachklasse={s.fachklasse.Kennung}
-            faechergruppenIds={[10,20,30]}
-          ></Noten>
-        </div>
-        <hr />
-        <Voffset v="1"/>
-        <div class="text-center">
-          <b>{s.Geschlecht === 3 ? "Der Studierende":"Die Studierende"} hat laut Konferenzbeschluss vom {datum(hj.Konferenzdatum)}
-          <br>die Berechtigung zum Übergang in das Berufspraktikum erworben.</b>
-        </div>
-        <Voffset v="1"/>
-        <b>Bemerkungen</b><br />{@html bemerkungen(hj)}
-      </div>
-      <div class="footer">
-        <div class="flex-grid">
-          <div class="col-2">
-            {schule.Ort}, den {datum(hj.ZeugnisDatum)}
-          </div>
-          <div class="col text-center klein">
-          <Voffset v="3"/>
-            <hr />
-            {schule.SchulleiterVorname} {schule.SchulleiterName} <br />{schule.schulleiter_in}
-          </div>
-          <div class="col text-center klein">
-          <Voffset v="3"/>
-            Siegel
-          </div>
-          <div class="col text-center klein">
-          <Voffset v="3"/>
-            <hr />
-            {hj.lehrer.Vorname} {hj.lehrer.Nachname}<br />{hj.klassenlehrer_in}
-          </div>
-        </div>
-        <div class="klein eng">
-          <Voffset v="2"/>
-          <div class="schulnummer text-center">
-            Schulnummer: {schule.SchulNr}
-          </div>
-          <hr class="hr-grau" />
-          <div class="grau text-center">
-              Notenstufen gemäß § 48 SchulG: 1 = sehr gut, 2 = gut, 3 = befriedigend,
-              4 = ausreichend, 5 = mangelhaft, 6 = ungenügend
-          </div>
-        </div>
-      </div>
-    </div>
-    <div class="page grid" orientation="portrait" size="A4">
-      <div class="footer grau">
-        <Fussnote notenstufen={false} {schule} verordnung={true}></Fussnote>
-      </div>
-    </div>
-  {/each}
-{/each}
-
-<script>
-  import { datum, versetzungsvermerk, volljaehrigBei, bemerkungen, bg }  from './helfer'
-
-  import Seitenlogo from './partials/Seitenlogo.html'
-  import Pageheader from './partials/Pageheader.html'
-  import Voffset from './partials/Voffset.html'
-  import Noten from './partials/Noten.html'
-  import Fussnote from './partials/Fussnoten.html'
-
-  export let schueler, schule, privat, jahr, abschnitt
-  let zeigeVersetzungsvermerk = true
-  const aktHalbjahr = a => a.Jahr === jahr && a.Abschnitt === abschnitt
-</script>
-
-<style>
-  @import 'css/main.css';
-  .lf-noten {
-    font-size: 0.9rem;
-  }
-  .vbutton {
-    background-color: red;
-    color: white;
-  }
-</style>

+ 0 - 73
partials/Fussnoten.html

@@ -1,73 +0,0 @@
-<!-- Allgemeine Fussnoten
-
-Folgende Attribute werden unterstützt:
-schule:     Hier stehen die SchulNr etc drin. Muss mitgegeben werden
-ger:        Wenn der GER für AGZ oder ASZ verwendet werden soll, mitangeben.
-            true|false Standardwert ist false
-notenstufen:Wenn die Notenstufen mit angegeben werden sollen.
-            true|false Standardwert ist false
-verordnung :true|false Standartwert false
-bfs:        true|false Standardwert false
-rechtsbehlfsbelehrung :true|false Standartwert true
-
-Beachte, true|false nicht als String setzen, sondern als statement:
-notenstufen={false} -->
-
-<div class="klein eng">
-  <Voffset v="2"/>
-  <div class="schulnummer">
-    Schulnummer: {schule.SchulNr}
-  </div>
-  <hr class="hr-grau" />
-  <div class="grau">
-    {#if notenstufen}
-      Notenstufen gemäß § 48 SchulG: 1 = sehr gut, 2 = gut, 3 = befriedigend,
-      4 = ausreichend, 5 = mangelhaft, 6 = ungenügend
-      <Voffset v=".5"/>
-    {/if}
-    {#if ger}
-      <sup>1</sup>Der Unterricht in den modernen Fremdsprachen hat auf der nach dem Fach in
-      Klammern angegebenen Niveaustufe des „Europäischen Referenzrahmens für
-      Sprachen: Lernen, Lehren, Beurteilen“ stattgefunden. Sind zwei
-      Referenzniveaus ausgewiesen, ist das niedrigere in vollem Umfang, das höhere
-      in Anteilen erreicht. Bei mindestens ausreichenden Leistungen wird der
-      sprachliche Kompetenzerwerb auf diesem Niveau bescheinigt.
-      <Voffset v=".5"/>
-    {/if}
-    {#if verordnung}
-      Dem Zeugnis liegen zugrunde: Die Verordnung über die Ausbildung und Prüfung
-      in den Bildungsgängen des Berufskollegs (Ausbildungs- und Prüfungsordnung
-      Berufskolleg, APO-BK) vom 26. Mai 1999 (SGV. NRW. 223/BASS 13 – 33 Nr. 1.1).
-    {#if bfs}
-      <br>Die Rahmenvereinbarung über die Berufsfachschulen (Beschluss der
-      Kultusministerkonferenz vom 17.10.2013) in der jeweils geltenden Fassung.
-    {:else if fs}
-      <br>Die Vereinbarung über Fachschulen (Beschluss der
-      Kultusministerkonferenz vom 07. November 2002 in der jeweils geltenden
-      Fassung).
-    {:else if fsasz}
-      <br>Abschluss der Fachschule entspricht der Rahmenvereinbarung über
-      Fachschulen (Beschluss der Kultusministerkonferenz vom 07.11.2002 in
-      der jeweils geltenden Fassung) und wird von allen Ländern in der
-      Bundesrepublik Deutschland anerkannt.
-    {/if}
-      <Voffset v=".5"/>
-    {/if}
-    {#if rechtsbehelfsbelehrung}
-      Rechtsbehelfsbelehrung: Gegen dieses Zeugnis kann innerhalb eines Monats
-      nach Bekanntgabe des Zeugnisses Widerspruch eingelegt werden. Der Widerspruch
-      ist beim {schule.Bezeichnung2}, {schule.Strasse}, {schule.PLZ} {schule.Ort},
-      schriftlich oder zur Niederschrift zu erheben. <br />Falls die Frist durch
-      das Verschulden einer/eines Bevollmächtigten versäumt wird, wird dieses
-      Verschulden der Widerspruchsführerin/dem Widerspruchsführer zugerechnet.
-    {/if}
-  </div>
-</div>
-
-<script>
-  export let schule, notenstufen, verordnung, fs, fsasz
-  export let rechtsbehelfsbelehrung = true
-  export let ger = false
-  export let bfs = false
-  import Voffset from './Voffset.html'
-</script>

+ 0 - 167
partials/Noten.html

@@ -1,167 +0,0 @@
-<!--
-Allgemeine Notentabelle für Berufskollegs, die z.B. die etwas langtextigen
-Lernfeldfächer unterstützt oder verschiedene Abschlussnoten.
-
-Folgende Attribute werden unterstützt:
-lernfeld: Sorgt dafür, dass die Klasse `fach-bezeichnung` nicht gesetzt wird und
-          Fächer dementsprechend nicht eingerückt werden (nur Lernfeldfächer)
-          true|false Standardwert false
-noten:    Hier können Abschnittsnoten oder Abschlussnoten gesetzt werden, z.B.
-          hj.noten oder s.bk_abschluss_faecher oder s.fhr_abschluss_faecher
-          Muss gesetzt werden
-fachGliederungen: sollten mitgegeben werden, wenn die für verschiedene Bildungsgänge
-          geänderten Werte berücksichtigt werden sollen, z.B. andere Bezeichnungen
-          in den verschiedenen Bildungsgängen
-ger:      Wenn ein Referenzniveau für die Fremdsprachen angegeben werden soll
-          true|false, Standardwert false,
-fachklasse: muss mitgegeben werden, wenn aus der Fachklassen.json Datei der Standard-
-          Wert gelesen werden soll. Ansonsten über Lernentw festlegen, was eigetragen wird
-faechergruppenIds: legt fest, welche Fächergruppen gezogen werden sollen. Standartwert ist
-          ein leerer Array, d.h. alle Fächergruppen werden gezogen. Ansonsten können
-          nur bestimmte festgelegt werden z.B. [10, 20, 30]
-fhrSternchen: Legt fest, ob die für die FHR relevanten Fächer ein Sternchen
-          bekommen. Standardwert ist false
-gruppenbezeichnungNeu: Legt für eine GruppenID eine neue Gruppenbezeichnung fest
-          Es wird ein Objekt erwartet, z.B. {40: 'Fachpraktische Prüfung'}
-berufsbezogenZuerst: Diese Einstellung legt fest, dass die gen. Fächer zuerst auf
-          dem Zeugnis als Fächergruppe erscheinen wie in der BASS vorgegeben.
--->
-
-<table class="table-noten">
-  {#each faechergruppen as [gruppen_id, gruppenFaecher]}
-    <tr>
-      <td class="fachgruppe-margin">
-        <b>{gruppenbezeichnung(gruppen_id)}</b>
-      </td>
-    </tr>
-    {#each lernbereicheUndFaecher(gruppenFaecher) as [lernbereich, faecher]}
-      {#if lernbereich != faecher[0].fach.Zeugnisbez}
-        <tr><td colspan="2" class="{lernfeld ? '' : 'fach-bezeichnung'}">{lernbereich}</td></tr>
-      {/if}
-      {#each faecher as f (f.ID)}
-        {#if f.fach.AufZeugnis === '+'}
-          <tr>
-            <td class="{lernfeld ? '' : 'fach-bezeichnung'} {lernbereich != faecher[0].fach.Zeugnisbez ? 'lernfeld-lernbereich' : ''}">
-              {#if f.fach.Zeugnisbez.includes("Projekt")}
-                <!-- Funktioniert nicht mit Abschlussnoten, da diese keine Spalte `Lernentw` haben -->
-                {f.Lernentw}
-              {:else}
-                <!-- Die Zeugnisbezeichnung hat bei gesetzten fachGliederungen einen anderen Namen... -->
-                {f.fach.ZeugnisBez || f.fach.Zeugnisbez}
-                <!-- Ist ger gesetzt, unter Lernentw nach Eintrag schauen. Wenn dort nichts steht,
-                in der Fachklassen.json nach Einträgen für Fremdsprache und Fach_ID suchen
-                Mit der Fussnote 1 muss natürlich auch tatsächlich eine Fussnote zum GER existieren … -->
-                {#if ger && f.fach.IstSprache === '+'}
-                  {fremdsprache(f, fachklasse)}<sup>1</sup>
-                {/if}
-                <!-- Die für die FHR Durchschnittsnote einbezogenen Noten bekommen in
-                den FS-Zeugnissen ein Sternchen -->
-                {#if fhrSternchen && f.fach.GewichtungFHR > 0}
-                  <sup>*</sup>
-                {/if}
-              {/if}
-            </td>
-            <!-- Entweder Abschlussnote, wenn gesetzt oder Abschnittsnote oder nix -->
-            <!-- Wenn als Note eines der 'Teilgenommen' steht, dann ohne graue Hinterlegung.
-            Außer es ist eine Sprache, dann wird es wohl ein 'teilgenommen' sein,
-            das auf eine Fremdsprachenprüfung hinweist und nicht mit den anderen
-            Fächern im Diff-Bereich steht. Optisch besser. -->
-            {#if (f.fach.IstSprache==='-') && ((f.NoteAbschluss && f.NoteAbschluss.startsWith('E')) || (f.NotenKrz && f.NotenKrz.startsWith('E')))}
-              <td class="td-fach-note"><span class="e-note">{note(f.NoteAbschluss) || note(f.NotenKrz)}</span></td>
-            {:else}
-              <td class="td-fach-note"><span>{note(f.NoteAbschluss) || note(f.NotenKrz) || '–––––'}</span></td>
-            {/if}
-          </tr>
-        {/if}
-      {/each}
-    {/each}
-    <tr>
-    </tr>
-  {/each}
-</table>
-
-<script>
-  import { gruppenIds } from './gruppenIDs'
-  import { note, fremdsprache, groupBy } from '../helfer'
-
-  export let lernfeld
-  export let ger = false
-  export let faechergruppenIds = []
-  export let noten, fachGliederungen, fachklasse
-  export let fhrSternchen, gruppenbezeichnungNeu
-  export let berufsbezogenZuerst = true
-
-  let faechergruppen
-
-  // Berechne die Noten neu, wenn sich die Notenquelle ändert
-  $: noten && faechergruppen_calc()
-
-  Object.assign(gruppenIds, gruppenbezeichnungNeu)
-
-  const faechergruppen_calc = () => {
-    // noten werden im jeweiligen Dokument über das *noten*-Attribut mitgegeben.
-    // z.B. die Abschnittsnote oder die Noten aus *s.bk_abschluss_faecher* und co.
-    // Nutzer über Konsole auf Änderungen in den Fächern hinweisen
-    if (fachGliederungen && fachGliederungen.length > 0) console.log('Es wurden Fachgliederungswerte gesetzt: ', fachGliederungen)
-    // suche in den fachGliederungen, ob für die jeweilige Fachklasse was besonderes festgelegt wurde
-    // vorausgesetzt, fachGliederungen wurde mitgegeben
-    const faecher = fachGliederungen
-      ? noten.map(f => {return {...f, fach: Object.assign(f.fach, fachGliederungen.find(fg => fg.Fach_ID === f.Fach_ID))}})
-      : noten
-    // nun alle Fächer rauswerfen, die nicht in den FaechergruppenIds zugeordnet sind, z.B. Abschlussarbeiten, Projekte etc.
-    const faecherBereinigt = faechergruppenIds.length === 0
-      ? faecher
-      : faecher.filter(f => faechergruppenIds.find(id => f.fach.Fachgruppe_ID === id))
-    // erstmal alle Fächer sortieren in der passenden Reihenfolge,
-    // dann nach Fachgruppe gruppieren
-    const sortiert = faecherBereinigt.sort((a, b) => a.fach.SortierungS2 < b.fach.SortierungS2 ? 1 : -1)
-    let gruppiert = groupBy(sortiert, 'fach.Fachgruppe_ID')
-    // Die BK-Zeugnisse führen zuerst die berufsbezogenen Fächer auf.
-    // D.h. Gruppen_ID 20 muss auf 0 gesetzt werden, damit es an den Anfang kommt
-    if (berufsbezogenZuerst && gruppiert.get(20)) {
-      gruppiert.set(0, gruppiert.get(20))
-      gruppiert.delete(20)
-      gruppenIds[0] = gruppenIds[20]
-    }
-    faechergruppen = [...gruppiert.entries()].sort((a,b) => a[0] - b[0])
-  }
-  const gruppenbezeichnung = gruppe => gruppenIds[gruppe]
-  const lernbereicheUndFaecher = gruppenFaecher => [...groupBy(gruppenFaecher, 'fach.Bezeichnung').entries()].reverse()
-</script>
-
-<style>
-.table-noten {
-  width: 100%;
-  border: none;
-  border-collapse: collapse;
-  margin-bottom: 1rem;
-}
-.fach-bezeichnung {
-  padding-left: 10mm;
-}
-.td-fach-note {
-  padding-bottom: .2rem;
-  padding-top: .2rem;
-  width: 12rem;
-}
-.td-fach-note span {
-  background-color: #dcdcdc !important;
-  text-align: center;
-  width: 10rem;
-  display: block;
-  margin: 0 auto;
-}
-.td-fach-note span.e-note {
-  background-color: white !important;
-  width: 17em;
-  margin: 0;
-  padding: 0;
-}
-.fachgruppe-margin {
-  padding-top: 0.3rem;
-}
-.lernfeld-lernbereich {
-  padding-left: 2rem;
-  padding-bottom: 0;
-}
-</style>

+ 0 - 51
partials/Pageheader.html

@@ -1,51 +0,0 @@
-<!-- Folgende Attribute werden unterstützt:
-art:  z.B. Zeugnis, Abgangszeugnis etc. Sollte auf eine vorhandene Datei zeigen
-      wird unten links platziert im Header
-logo: z.B Schullogo. Wird oben recht splatziert
-untertitel: Wird unterhalb des Logos platziert.
-hr:   Wenn eine rote Linie unter das Logo soll. Standard an -->
-<div class="header">
-    {#if art}
-      <img class="art" src="{art}" alt="logo_art"/>
-    {/if}
-    {#if logo}
-      <img class="logo" src="{logo}" alt="logo"/>
-    {/if}
-    {#if untertitel}
-      <img class="untertitel" src="{untertitel}" alt="logo_untertitel"/>
-    {/if}
-    {#if hr}
-      <hr class="hr-rot"/>
-    {/if}
-</div>
-<script>
-  export let art, logo, untertitel
-  export let hr = true
-</script>
-
-<style>
-  .header {
-    position: relative;
-    height: 115px;
-  }
-  .art {
-    position: absolute;
-    bottom: 12px;
-  }
-  .logo {
-    position: absolute;
-    right: 0px;
-  }
-  .untertitel {
-    position: absolute;
-    right: 0px;
-    bottom: 12px;
-  }
-  .hr-rot {
-    border-color: #ff2700;
-    margin: 8px 0;
-    position: absolute;
-    bottom: 0px;
-    width: -webkit-fill-available;
-  }
-</style>

+ 0 - 51
partials/SOA-Tabelle.html

@@ -1,51 +0,0 @@
-<table class="table table-bordered" style="width: 100%">
-  <tr>
-    <th width="35%">Bereichsspezifische Fächer</th>
-    <th>Zugeordnete Lernfelder</th>
-  </tr>
-  <tr>
-    <td>Erziehung und Soziales</td>
-    <td>
-      <ul class="dashes">
-        <li>Bedürfnisse und Potentiale wahrnehmen, beobachten und analysieren</li>
-        <li>Mit Konzepten in sozialpädagogischen Einrichtungen arbeiten</li>
-        <li>Beziehungen in der sozialpädagogischen und pflegerischen Arbeit gestalten</li>
-        <li>Gestaltungsprinzipien und Gestaltungsmittel in Räumen sozialpflegerischer Einrichtungen</li>
-      </ul>
-    </td>
-  </tr>
-  <tr>
-    <td>Gesundheitsförderung und Pflege</td>
-    <td>
-      <ul class="dashes">
-        <li>Sozialpflegerische Handlungsprozesse systematisch planen, umsetzen, dokumentieren und evaluieren</li>
-        <li>Pflegekonzepte als Grundlage der pflegerischen Tätigkeiten anwenden</li>
-        <li>Kompetenzen, Ressourcen und Potentiale erkennen und fördern</li>
-        <li>Gesunde Lebensführung fördern</li>
-      </ul>
-    </td>
-  </tr>
-  <tr>
-    <td>Arbeitsorganisation und Recht</td>
-    <td>
-      <ul class="dashes">
-        <li>Sich im Berufsfeld orientieren, auf Anforderungen einlassen und die eigene Person darstellen</li>
-        <li>Rechte und Pflichten des Sozialassistenten kennen und wahrnehmen</li>
-        <li>Außendarstellung der sozialpädagogischen bzw. -pflegerischen Einrichtungen unterstützen</li>
-        <li>Wirtschaftlich mit Materialien umgehen</li>
-      </ul>
-    </td>
-  </tr>
-</table>
-
-<style>
-  .table-bordered {
-    border-collapse: collapse;
-  }
-  .table-bordered tr {
-    border-bottom: thin solid #333;
-  }
-  .schulnummer {
-    text-align: right;
-  }
-</style>

+ 0 - 10
partials/Seite2Fussnoten.html

@@ -1,10 +0,0 @@
-<div class="page grid" orientation="portrait" size="A4">
-  <div class="footer grau">
-    <Fussnote notenstufen={false} {schule} {ger}></Fussnote>
-  </div>
-</div>
-
-<script>
-export let schule, ger, notenstufen
-import Fussnote from './Fussnoten.html'
-</script>

+ 0 - 17
partials/Seitenlogo.html

@@ -1,17 +0,0 @@
-<div class="seitenlogo">
-  {#if logo}
-    <img src="{logo}" height="160" alt="traeger_logo"/>
-  {/if}
-</div>
-
-<script>
-  export let logo
-</script>
-
-<style>
-  .seitenlogo {
-    position: absolute;
-    bottom: 10mm;
-    left: 10mm;
-  }
-</style>

+ 0 - 4
partials/Voffset.html

@@ -1,4 +0,0 @@
-<div style="margin-top: {v}em"></div>
-<script>
-  export let v
-</script>