T.O.M. - Features & Changelog
Feature-Liste (Stand: Oktober 2026)
🚀 Version 2.0: Architektur-Sprung & Code-Modernisierung
Umfangreiches Refactoring zur Modernisierung der Code-Basis und Backend-Anbindung.
🏢 Portal & Corporate Identity
- Neues, responsives Einstiegsportal (Hub) für das Turniersystem entwickelt.
- UX-Schutz: Zurück-Navigation im Turnier-Modul entschärft, um Datenverlust durch versehentliche Fehlklicks im Live-Betrieb zu verhindern.
⚙️ Architektur & Clean Code (Under the Hood)
- Auflösung des Monolithen: Modulares Dateisystem mit modernen ES6 Imports etabliert.
- Strikte MVC-Trennung (Model-View-Controller) umgesetzt.
- Sämtliches Inline-CSS eliminiert und in einer zentralen styles.css konsolidiert.
1. Turniermodi & Auslosungs-Engines
- Schweizer System (CH): Vollwertige rekursive Paarungs-Engine nach FIDE-Regeln inkl. Backtracking-Algorithmus zur Vermeidung von Sackgassen.
- Rundenturnier (Round-Robin): Automatische Generierung inkl. Farbverteilung.
- Chess960 (Fischer Random): Integrierter Generator für alle 960 Stellungen inkl. FEN-Code und Lichess-Editor-Link.
- Manueller Modus (Rekonstruktion): Ermöglicht den Nachbau historischer Turniere oder manuelle Eingriffe (z. B. Paarungen erzwingen).
- FIDE-Farbausgleich (Regel C.04.1.b): Das System verhindert konsequent, dass ein Spieler dreimal in Folge dieselbe Farbe erhält (mit Ausnahme von Notfall-Fallbacks in der absoluten Schlussrunde).
- Intelligente Freilos-Vergabe: Systematischer Ausgleich bei ungerader Teilnehmerzahl (kein Spieler erhält zweimal ein Freilos).
2. Teilnehmer-Management & Runden-Management
- Live-Editierung: Spielerdaten (Name, Verein, DWZ, ELO) können jederzeit im laufenden Turnier korrigiert werden.
- Pausen-Modus: Spieler können für einzelne Runden auf "Inaktiv" gesetzt werden, ohne das Turnier verlassen zu müssen.
- Half-Point Bye: Systemseitige Option für pausierende Spieler. Das System vergibt regelkonform 0,5 Punkte, ohne den Spieler zu paaren.
- Runden-Navigator: Jederzeitiges Zurückspringen in bereits gespielte Runden, um fehlerhafte Ergebnismeldungen nachträglich zu korrigieren.
- Runden-Ankündigung: Automatischer Text-Generator für WhatsApp & E-Mail inkl. Fristen für Nachholpartien.
- Live-DWZ-Prognose: Berechnung der Wertungsänderung nach neuer WO 2026 direkt in der Teilnehmerliste.
3. Mathematik & Dynamische Tabellen
- FIDE-konforme Buchholz-Zunahme: Live-Einberechnung der aktuellen Punktzahlen zugewiesener Gegner noch während der laufenden Runde.
- Virtuelle Gegner (FIDE C.04.3.2): Vollwertige mathematische Korrektur für kampflose Partien und Freilose, um Verzerrungen der Buchholz-Wertung zu verhindern.
- Flexibles Umschalten (Live-Switches): Sowohl die Feinwertungen als auch das Berechnungsmodell (mit/ohne Virtuelle Gegner, Half-Point Bye) können live per Checkbox gewechselt werden.
- Altersklassen-Filter: Die Tabelle kann per Dropdown sofort auf einzelne Altersklassen (z. B. "Nur U12") reduziert werden – ideal für zielgerichtete Ausdrucke oder Uploads.
- Präsentationsansicht: Ablenkungsfreies Vollbild-Rendering der Tabellen (Dark-Mode optimiert) für Beamer. Skaliert dynamisch und scrollbar-frei auf jede Monitorgröße.
4. Export, Import & Web-Anbindung
- 🌐 1-Klick Web-Sync (Datenbank): Laufende und beendete Turniere können auf Knopfdruck in einer MySQL-Datenbank (Web-Pool) gespeichert werden.
- Dynamische iFrames: Jedes synchronisierte Turnier erhält eine eindeutige Web-ID und generiert automatisch einen Embed-Code für die Vereinshomepage.
- Live-Ticker: Der Web-Sync-Button überschreibt automatisch die reservierte ID 0, wodurch ein permanenter Live-Ticker auf der Homepage immer das aktuellste Turniergeschehen anzeigt.
- JSON-Backup & CSV: Lokale Sicherung des kompletten Turnierstatus sowie optimierter Import/Export von Vereinslisten (UTF-8 BOM Support). Die Web-ID bleibt in JSON-Backups erhalten.
- PGN-Export: Volle Partien-Dokumentation für einzelne Runden oder das gesamte Turnier (inkl. Chess960-Varianten-Header).
- Behörden-Export: TRF-Dateien (Fixed-Width) für den DSB/FIDE zur offiziellen Wertungsauswertung generieren.
Changelog
v1.6 (Oktober 2026) - FIDE Pairing-Engine Refactoring
- Bugfix (Farbregeln): Striktes Einhalten der FIDE-Regel C.04.1.b. Der Algorithmus erzwingt nun einen harten Stopp, wenn ein Spieler dreimal in Folge dieselbe Farbe erhalten würde.
- Bugfix (Backtracking): Die Auslosungs-Engine nutzt nun eine rekursive Tiefensuche (Backtracking). Sackgassen an den unteren Brettern werden rechtzeitig erkannt und durch Neupositionierung der oberen Bretter vollständig aufgelöst. Illegale Doppel-Paarungen sind damit ausgeschlossen.
- Feature: Kampflose Partien werden im Paarungs-Verlauf nun FIDE-konform erkannt. Die betroffenen Spieler können in späteren Runden regulär gegeneinander gelost werden.
v1.5 (Juni 2026) - TRF-Export & UI-Perfektion
- Feature: TRF-Export für beendete Turniere nach strengen FIDE/DSB Fixed-Width-Spezifikationen integriert (001-Codes, Padding, etc.).
- UI/UX: Export-Leiste komplett überarbeitet. Striktes Raster, einheitliche Höhen (38px) und strategische Farbgebung (Ghost-Buttons für PDF/TXT, Lila für PGN/TRF, Signalton für Web-Sync).
- UI/UX: Spielerliste robuster gemacht (Flexbox-Fix). Aktions-Buttons bleiben auch bei extrem langen Namen oder Fensterumbrüchen stets gebündelt am rechten Rand.
- UI/UX: Präsentationsansicht (Beamer) mit responsiver
clamp()-Schriftgröße ausgestattet, um horizontale Scrollbars auf jedem Endgerät zuverlässig zu verhindern.
- UI-Polish: Quadratische Action-Buttons (Stift-Icon) in der Liste für eine bessere Trefferfläche.
v1.4 (Mai 2026) - Das Web-Sync & Datenbank-Update
- Feature: Umstellung der Web-Anbindung von statischen HTML-Dateien auf eine dynamische MySQL-Datenbank (`tom_archive`).
- Feature: Einführung des "1-Klick Web-Sync"-Buttons. Laufende Turniere können nun lückenlos als Zwischenstände online aktualisiert werden, beendete Turniere werden eingefroren.
- Feature: Automatische Generierung von einzigartigen Web-IDs und iFrame-Einbettungscodes für eine kinderleichte Homepage-Pflege.
- Feature: "Live-Ticker"-Slot (`id=0`) integriert, der immer das zuletzt aktualisierte Turnier bereithält.
- UX-Fix: Die Feature-Liste öffnet sich nun als gesicherter Info-Tab und kann via Button geschlossen werden, um den Fokus auf dem lokalen Turnier-Tab zu behalten.
v1.3 (Mai 2026) - Das FIDE-Feinwertungs-Update
- Feature: Vollwertige FIDE-Berechnung für "Virtuelle Gegner" bei Freilosen und kampflosen Ergebnissen implementiert.
- Feature: "Half-Point Bye"-Modus für pausierende Spieler hinzugefügt – inklusive dynamischem FIDE-Wertungsmodell.
- Feature: Live-Synchronisation der Einstellungs-Checkboxen (Startmenü und Tabellen-Unterseite) zur fehlerfreien Live-Korrektur.
v1.2 (Mai 2026) - Die Web-Brücke & UI-Dynamik
- Feature: Erster Live-Upload der HTML-Tabelle auf den eigenen Webspace via PHP-Schnittstelle integriert.
- Feature: Live-Filter für Altersklassen (AK) in der Tabellenansicht hinzugefügt.
- Feature: Runden-Navigator integriert, um historische Runden nachträglich ohne Datenverlust zu korrigieren.
v1.1 (Mai 2026) - Erweiterungen & Komfort
- Manuelle Paarung: Feature zur Rekonstruktion laufender Turniere hinzugefügt.
- Chess960: Fischer-Random-Support implementiert.
- Kommunikation: WhatsApp/E-Mail Ankündigungs-Modul hinzugefügt.
v1.0 (Mai 2026) - Initial Release
- Grundlegende Architektur für CH-System und Rundenturniere.
- DWZ-Berechnungsmodul nach WO 2026.
- Lokale Datenhaltung via localStorage.