gui: Karten-Layout, Vollbild-Start, CSV-Speichern-Button

- Eine Karte pro Account mit zwei Zeilen: Person oben (Vorname/Name/Email
  + Lösch-Button), Service-Felder unten in drei Gruppen (Plesk/Kerio/
  Nextcloud) mit blauen Überschriften und vertikalen Trennlinien.
- Karten haben Rand, füllen die volle Fensterbreite und sind mit #1, #2, …
  durchnummeriert; Pflichtfeld-Fehlermeldungen referenzieren diese Nummern.
- Passwort-Felder maskiert (•••).
- Fenster startet maximiert: -zoomed (Linux/X11) → state(zoomed) (Windows)
  → Fallback Bildschirmgeometrie.
- Neuer Toolbar-Button "CSV speichern …" exportiert die ausgefüllten
  Karten im selben Format wie example.csv (Round-Trip-fähig).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-05-12 13:13:41 +02:00
parent b88c766dd6
commit 4711c55d89
2 changed files with 195 additions and 47 deletions
+24 -8
View File
@@ -154,14 +154,30 @@ python deploy.py --gui
python deploy.py
```
In der GUI:
- **+ Zeile** fügt eine neue Eingabezeile hinzu (Endlosfelder).
- **✕ löschen** entfernt eine Zeile (rote Schrift).
- **CSV laden** füllt die Felder aus einer bestehenden CSV.
- **Ausgabeordner** wählen.
- **Ausführen ▶** legt die Konten an + erzeugt PDFs + Admin-Report.
- **📄 Nur PDF** schreibt nur die PDFs ohne API-Aufrufe.
- Log unten zeigt Fortschritt.
Das Fenster startet maximiert. Jeder Account ist eine **Karte** mit zwei
Zeilen: oben die Person (Vorname, Name, Email) + Lösch-Button, unten drei
Service-Gruppen (Plesk / Kerio / Nextcloud) mit Host + Passwort. Passwort-
Felder sind maskiert. Die Karten sind mit `#1, #2, …` durchnummeriert,
Fehlermeldungen referenzieren diese Nummern.
Buttons in der Toolbar:
| Button | Wirkung |
| ------------------ | ------------------------------------------------------------------ |
| `+ Zeile` | Neue leere Karte am Ende anhängen |
| `CSV laden …` | Felder aus einer bestehenden CSV befüllen |
| `CSV speichern …` | Aktuell ausgefüllte Karten als CSV exportieren (Round-Trip-fähig) |
| `Ausgabeordner …` | Zielverzeichnis für PDFs + Admin-Report wählen |
| `📄 Nur PDF` | Nur PDFs schreiben, keine API-Aufrufe |
| `Ausführen ▶` | Konten anlegen + PDFs + Admin-Report |
| `✕ löschen` (rot) | Karte entfernen (auch die letzte es bleibt eine leere) |
> Die per `CSV speichern …` exportierte Datei enthält **Klartext-Passwörter**
> sicher ablegen / verschlüsselt versenden, und die `*.csv` ist via
> `.gitignore` (Ausnahme `example.csv`) standardmäßig vom Repo ausgeschlossen.
Log unten im Fenster zeigt Fortschritt; nach dem Lauf öffnet eine Hinweis-Box
mit dem Pfad zur Sammel-PDF.
---