# Cockpit auf Cloudflare Pages veröffentlichen

Der Ordner ist so aufgebaut, dass er ohne Anpassung als statische Website läuft.

```
index.html                                  ← das Cockpit
dokumente/                                  ← die sieben Quell-PDF und die Investorenanalyse (xlsx)
Tetris_AG_Zwischenabschluss_30062026.xlsx   ← die Arbeitsmappe für Fritz Beck (19 Blätter)
Tetris_AG_Campus_Elgg_Finanzierung.pptx     ← die Präsentation für Bank und Investoren
AENDERUNGSPROTOKOLL.md                      ← das Änderungsprotokoll aller Versionen
LIESMICH_Cloudflare.md                      ← diese Anleitung
Tetris_AG_Quellcode.zip                     ← Datenmodell und Generatoren (zum Herunterladen)
```

Der Abschnitt «Unterlagen» im Cockpit verlinkt jede dieser Dateien. Wer den Link zur Website hat,
kann alles öffnen oder herunterladen — Fritz Beck braucht keine einzelnen Dateien per E-Mail.

Alle Links im Cockpit sind relativ. Es gibt keine externen Abhängigkeiten: Schriften, CSS
und Auszeichnung stecken in der einen HTML-Datei.

## Weg 1 — Direktes Hochladen (kein Konto-Setup nötig, zwei Minuten)

1. Den ganzen Ordnerinhalt als ZIP packen (oder das mitgelieferte
   `Tetris_AG_Cockpit_Cloudflare.zip` verwenden).
2. Im Cloudflare-Dashboard: **Workers & Pages → Create → Pages → Upload assets**.
3. Projektname vergeben, zum Beispiel `tetris-abschluss-2026`.
4. ZIP hochladen, **Deploy site** klicken.
5. Die Seite läuft danach unter `https://tetris-abschluss-2026.pages.dev`.

## Weg 2 — Über ein Git-Repository (empfohlen, wenn das Cockpit laufend aktualisiert wird)

1. Ordner in ein privates Repository legen.
2. **Workers & Pages → Create → Pages → Connect to Git**.
3. Build-Befehl leer lassen, Build-Ausgabeverzeichnis `/` setzen.
4. Jeder Push veröffentlicht automatisch eine neue Fassung.

## Zugriff beschränken

Die Unterlagen enthalten Vertrags- und Finanzdaten. Vor dem Teilen des Links:

- **Cloudflare Access** aktivieren (Zero Trust → Access → Applications), Zugriff auf die
  E-Mail-Adressen von Verwaltungsrat, Fritz Beck und den Bankansprechpartnern beschränken.
  Bis zu 50 Nutzer sind im kostenlosen Tarif enthalten.
- Alternativ eine eigene Subdomain wie `abschluss.urbanstreet.ch` aufschalten
  (Pages → Custom domains) und diese nicht öffentlich verlinken.

Ohne Access ist jede `pages.dev`-Adresse öffentlich erreichbar, sobald jemand den Link kennt.
Für ein Bankdossier mit Kaufverträgen und Darlehensverhältnissen ist Access die richtige Wahl.

## Aktualisieren

Cockpit, Arbeitsmappe und Änderungsprotokoll werden aus demselben Datenmodell erzeugt. Der Quellcode
liegt im Archiv `Tetris_AG_Quellcode.zip` (auf der Website verlinkt):

```
daten.py            Zahlen, Journal, Kontenplan, Pendenzen — die einzige Stelle für Änderungen
anhang.py           Anhang-Ziffern
aenderungen.py      Änderungsprotokoll
grafik.py           SVG-Grafiken
sim_section.py      Abschnitt Eigenkapitalsimulation
zusatz_sections.py  Abschnitte Anhang und Änderungsprotokoll
build_html.py       erzeugt index.html
build_xlsx.py       erzeugt die Arbeitsmappe
build_protokoll_md.py  erzeugt AENDERUNGSPROTOKOLL.md
deck/build_deck.js  erzeugt die Präsentation (Node, pptxgenjs)
assets/             Urbanstreet-Stylesheet
```

Wer einen Betrag ändern will, ändert ihn in `daten.py` und lässt `build_html.py` und
`build_xlsx.py` neu laufen (Python 3, openpyxl). Cockpit und Excel bleiben damit
deckungsgleich. Jede Änderung gehört zusätzlich ins Änderungsprotokoll (`aenderungen.py`).

## Version

Version 4.0, Stand 04.09.2026. Das vollständige Änderungsprotokoll steht im Cockpit
(Abschnitt 16), in der Arbeitsmappe (Blatt 17) und in `AENDERUNGSPROTOKOLL.md`.
