Deutsche Umlaute in UI und Dokumentation korrigieren

This commit is contained in:
2026-07-14 22:11:33 +02:00
parent f9544f24fd
commit 539117b409
31 changed files with 561 additions and 564 deletions
+36 -36
View File
@@ -10,28 +10,28 @@ Das echte Datenbankschema muss noch mit `schema-export.sql` verifiziert werden.
| Datei | Rolle | Wichtige Beobachtung |
| --- | --- | --- |
| `config.php` | AD-/DB-Konfiguration | Erstellt globale SQL-Server-Verbindung `$conn` |
| `functions.php` | Auth-/User-Helper | Liest `$_SERVER['AUTH_USER']`, inkludiert LDAP, prueft `kl_Mitarbeiter` |
| `functions.php` | Auth-/User-Helper | Liest `$_SERVER['AUTH_USER']`, inkludiert LDAP, prüft `kl_Mitarbeiter` |
| `functionsLDAP.php` | LDAP-Mailauflösung | Ermittelt `$mailadress` aus AD |
| `header.php` | HTML-Head und Hinweisbanner | Laedt `assets/css/main.css`, liest `kl_hinweise` |
| `footer.php` | App-Sidebar und JS | Enthaelt die sichtbare Navigation und Admin-Menues |
| `header.php` | HTML-Head und Hinweisbanner | Lädt `assets/css/main.css`, liest `kl_hinweise` |
| `footer.php` | App-Sidebar und JS | Enthält die sichtbare Navigation und Admin-Menüs |
| `nav.php` | Navigation | Aktuell praktisch leer |
| `headerline.php` | Headerfragment | Enthaelt NUL-Zeichen, fachlich unklar |
| `assets/css/main.css` | Hauptdesign | HTML5-UP Editorial, gruener Akzent, Tabellen, Buttons, Sidebar |
| `headerline.php` | Headerfragment | Enthält NUL-Zeichen, fachlich unklar |
| `assets/css/main.css` | Hauptdesign | HTML5-UP Editorial, grüner Akzent, Tabellen, Buttons, Sidebar |
| `DataTables/` | Tabellen-Assets | Wird teilweise eingebunden, aber nicht konsequent initialisiert |
| `PHPMailer/` | Mailversand | Fuer Rundmails/Jahresauswertung genutzt |
| `TCPDF/` | PDF-Export | Fuer Kaffeelisten-Export genutzt |
| `PHPMailer/` | Mailversand | Für Rundmails/Jahresauswertung genutzt |
| `TCPDF/` | PDF-Export | Für Kaffeelisten-Export genutzt |
## Fachliche Kernseiten
| Datei | Prozess | Tabellen |
| --- | --- | --- |
| `index.php` | Persoenliches Dashboard, Saldo, Jahreswerte, eigene Striche, PayPal-Links | `kl_Mitarbeiter`, `kl_Einzahlungen`, `kl_Kaffeeverbrauch`, `kl_config` |
| `kaffeeliste.php` | Admin-Gesamtuebersicht mit Salden | `kl_Mitarbeiter`, `kl_Einzahlungen`, `kl_Kaffeeverbrauch` |
| `index.php` | Persönliches Dashboard, Saldo, Jahreswerte, eigene Striche, PayPal-Links | `kl_Mitarbeiter`, `kl_Einzahlungen`, `kl_Kaffeeverbrauch`, `kl_config` |
| `kaffeeliste.php` | Admin-Gesamtübersicht mit Salden | `kl_Mitarbeiter`, `kl_Einzahlungen`, `kl_Kaffeeverbrauch` |
| `stricheintragen.php` | Sammelerfassung von Strichen | `kl_Mitarbeiter`, `kl_Kaffeeverbrauch`, `kl_config` |
| `einzahlung.php` | Sammelerfassung von Einzahlungen | `kl_Mitarbeiter`, `kl_Einzahlungen`, `kl_Kaffeeverbrauch` |
| `mitarbeiterverwalten.php` | Mitglieder anlegen, bearbeiten, aktivieren, deaktivieren | `kl_Mitarbeiter` |
| `namenanpassen.php` | Anzeigenamen aendern | `kl_Mitarbeiter` |
| `letzteneintraege.php` | Letzte Buchungen anzeigen und loeschen | `kl_Einzahlungen`, `kl_Kaffeeverbrauch`, `kl_Mitarbeiter` |
| `namenanpassen.php` | Anzeigenamen ändern | `kl_Mitarbeiter` |
| `letzteneintraege.php` | Letzte Buchungen anzeigen und löschen | `kl_Einzahlungen`, `kl_Kaffeeverbrauch`, `kl_Mitarbeiter` |
| `csvupload.php` | Zahlungs-CSV importieren | `kl_Mitarbeiter`, `kl_Einzahlungen` |
| `exportKaffeeliste.php` | PDF-/Listenexport | `kl_Mitarbeiter`, `kl_Kaffeeverbrauch`, `kl_Einzahlungen`, `kl_config` |
| `mailausgebe.php` | Mailausgabe/Adressliste | `kl_Mitarbeiter` |
@@ -44,7 +44,7 @@ Das echte Datenbankschema muss noch mit `schema-export.sql` verifiziert werden.
## Abgeleitete Tabellen und Spalten
Diese Spalten sind aus dem Code abgeleitet und muessen mit dem echten DB-Schema
Diese Spalten sind aus dem Code abgeleitet und müssen mit dem echten DB-Schema
abgeglichen werden.
| Tabelle | Abgeleitete Spalten |
@@ -64,13 +64,13 @@ abgeglichen werden.
1. Seite inkludiert `functions.php`.
2. `functions.php` liest `$_SERVER['AUTH_USER']`.
3. `functionsLDAP.php` ermittelt Mailadresse aus LDAP.
4. Zugriff wird ueber `kl_Mitarbeiter.Email`, `aktiv` und `admin` geprueft.
4. Zugriff wird über `kl_Mitarbeiter.Email`, `aktiv` und `admin` geprüft.
M0-Feststellung:
Login-Konto, Kaffee-Teilnehmer und Rolle sind im Legacy-Modell gekoppelt. Fuer
SaaS muessen `users`, `participants` und `tenant_memberships` getrennt werden.
Login-Konto, Kaffee-Teilnehmer und Rolle sind im Legacy-Modell gekoppelt. Für
SaaS müssen `users`, `participants` und `tenant_memberships` getrennt werden.
### Persoenliches Dashboard
### Persönliches Dashboard
Quelle: `index.php`.
@@ -81,7 +81,7 @@ Berechnungen:
- Gesamtausgabe: Summe `kl_Kaffeeverbrauch.Kosten`.
- Gesamtstriche: Summe `kl_Kaffeeverbrauch.AnzahlStriche`.
- Aktueller Stand: Einzahlungen minus Ausgaben.
- Jahreswerte: dieselben Summen fuer aktuelles Jahr.
- Jahreswerte: dieselben Summen für aktuelles Jahr.
- Bei aktivem `strichperweb`: eigener Strich-Eintrag.
- Bei aktivem `paypaluse`: PayPal-Links anzeigen.
@@ -123,19 +123,19 @@ M0-Feststellung:
Das `admin`-Flag ist fachlich eine Rolleninformation und sollte in der SaaS-App
in `tenant_memberships.role` wandern.
### Korrektur letzter Eintraege
### Korrektur letzter Einträge
Quelle: `letzteneintraege.php`.
Aktionen:
- Letzte 100 Einzahlungen anzeigen.
- Einzahlung hart loeschen.
- Letzte 100 Strich-Eintraege anzeigen.
- Strich-Eintrag hart loeschen.
- Einzahlung hart löschen.
- Letzte 100 Strich-Einträge anzeigen.
- Strich-Eintrag hart löschen.
M0-Feststellung:
Finanznahe Korrekturen sollten im Zielmodell nicht hart loeschen, sondern als
Finanznahe Korrekturen sollten im Zielmodell nicht hart löschen, sondern als
Storno/Reversal mit Audit-Trail gespeichert werden.
### CSV-Import
@@ -148,8 +148,8 @@ Ablauf:
- CSV mit Komma-Trennung lesen.
- Name aus Spalte 3, Betrag aus Spalte 7, Datum aus Spalte 0.
- Mitarbeiter per Name oder `paypalname` finden.
- Dublette anhand Mitarbeiter, Betrag und Datumstag pruefen.
- Einzahlung einfuegen.
- Dublette anhand Mitarbeiter, Betrag und Datumstag prüfen.
- Einzahlung einfügen.
- Ergebnis in Erfolg/Fehler klassifizieren.
### Jahresauswertung
@@ -160,33 +160,33 @@ Ablauf:
- Gesamtstriche des aktuellen Jahres je aktivem Mitarbeiter berechnen.
- Konstante Anzahl neuer Striche/Gutschrift proportional verteilen.
- Einzahlung je Mitarbeiter einfuegen.
- Einzahlung je Mitarbeiter einfügen.
- Mail an Mitarbeiter senden.
M0-Feststellung:
Das ist ein Job/Skript mit direktem Schreibzugriff und Mailversand. Fuer SaaS
Das ist ein Job/Skript mit direktem Schreibzugriff und Mailversand. Für SaaS
braucht es Dry-Run, Audit, Tenant-Scope und expliziten Operator.
## Offene Schemafragen
- Gibt es Primary Keys, Foreign Keys und Indizes fuer die `kl_`-Tabellen?
- Sind Datentypen fuer Geldwerte `decimal`, `money`, `float` oder etwas anderes?
- Gibt es Primary Keys, Foreign Keys und Indizes für die `kl_`-Tabellen?
- Sind Datentypen für Geldwerte `decimal`, `money`, `float` oder etwas anderes?
- Gibt es historische Spalten, die im Code nicht sichtbar sind?
- Gibt es Trigger oder Stored Procedures?
- Gibt es weitere Jobs ausser `jahresauswertung.php`?
- Gibt es weitere Jobs außer `jahresauswertung.php`?
- Sind Umfragetabellen produktiv relevant oder Archiv/Randmodul?
## Technische Legacy-Inkonsistenzen
- `csvupload.php` sucht in `getMitarbeiterID` nach `Name = ? or paypalname = ?`,
uebergibt aber nur einen Parameter. Das sollte vor der Uebernahme des
übergibt aber nur einen Parameter. Das sollte vor der Übernahme des
CSV-Flows verifiziert werden.
- `einzahlung.php` prueft auf `$_GET["action"]`, die Buttons erzeugen aber
URLs mit `aktion=...`. Der Vorderseite-/Rueckseite-Filter kann dadurch
- `einzahlung.php` prüft auf `$_GET["action"]`, die Buttons erzeugen aber
URLs mit `aktion=...`. Der Vorderseite-/Rückseite-Filter kann dadurch
abweichend vom erwarteten Verhalten laufen.
- `exportKaffeeliste.php` referenziert `tcpdf/tcpdf.php`, waehrend der Ordner im
Repository `TCPDF/` heisst. Auf case-sensitiven Dateisystemen kann das
- `exportKaffeeliste.php` referenziert `tcpdf/tcpdf.php`, während der Ordner im
Repository `TCPDF/` heißt. Auf case-sensitiven Dateisystemen kann das
brechen.
- `headerline.php` ist fachlich leer beziehungsweise mit NUL-Zeichen gefuellt.
Vor der neuen App-Shell sollte geklaert werden, ob die Datei entfernt werden
- `headerline.php` ist fachlich leer beziehungsweise mit NUL-Zeichen gefüllt.
Vor der neuen App-Shell sollte geklärt werden, ob die Datei entfernt werden
kann.