schachbulle / contao-internetschach-bundle
Nimmt Registrierungen für den Internetschachbetrieb des Deutschen Schachbundes auf.
Package info
github.com/Samson1964/contao-internetschach-bundle
Type:contao-bundle
pkg:composer/schachbulle/contao-internetschach-bundle
Requires
- php: ^8.1
- ext-dom: *
- ext-mbstring: *
- ext-zip: *
- codefog/contao-haste: ^5.4
- contao/core-bundle: ^4.13 || ^5.3
- phpoffice/phpspreadsheet: ^2.0 || ^3.0
- schachbulle/contao-helper-bundle: ^2.0
- symfony/config: ^5.4 || ^6.4 || ^7.0
- symfony/dependency-injection: ^5.4 || ^6.4 || ^7.0
- symfony/http-foundation: ^5.4 || ^6.4 || ^7.0
- symfony/http-kernel: ^5.4 || ^6.4 || ^7.0
- symfony/routing: ^5.4 || ^6.4 || ^7.0
Requires (Dev)
- contao/manager-plugin: ^2.0
- phpunit/phpunit: ^9.6 || ^10.5
Suggests
None
Provides
None
Conflicts
- contao/core: *
- contao/manager-plugin: <2.0 || >=3.0
Replaces
None
- dev-master
- 2.0.0
- 1.12.4
- 1.12.3
- 1.12.2
- 1.12.0
- 1.11.8
- 1.11.7
- 1.11.6
- 1.11.5
- 1.11.4
- 1.11.3
- 1.11.2
- 1.11.1
- 1.11.0
- 1.10.1
- 1.10.0
- 1.9.3
- 1.9.2
- 1.9.1
- 1.9.0
- 1.8.0
- 1.7.2
- 1.7.1
- 1.7.0
- 1.6.0
- 1.5.3
- 1.5.2
- 1.5.1
- 1.5.0
- 1.4.1
- 1.4.0
- 1.3.3
- 1.3.2
- 1.3.1
- 1.3.0
- 1.2.0
- 1.1.0
- 1.0.0
- 0.8.4
- 0.8.3
- 0.8.2
- 0.8.1
- 0.8.0
- 0.7.0
- 0.6.0
- 0.5.3
- 0.5.2
- 0.5.1
- 0.5.0
- 0.4.0
- 0.3.0
- 0.2.0
- 0.1.0
- 0.0.6
- 0.0.5
- 0.0.4
- 0.0.3
- 0.0.2
- 0.0.1
This package is auto-updated.
Last update: 2026-09-03 04:15:34 UTC
README
Nimmt Registrierungen für den Internetschachbetrieb des Deutschen Schachbundes auf, verwaltet Turnierserien, Anmeldungen, Turniertabellen und Preise und gibt die Ergebnisse im Frontend aus.
Frank Hoppe
Voraussetzungen
| PHP | 8.1 oder neuer (geprüft bis 8.4) |
| Contao | 4.13 LTS oder 5.3 und neuer (geprüft mit 4.13.58 und 5.7) |
| PHP-Erweiterungen | dom, mbstring, zip |
Installation
composer require schachbulle/contao-internetschach-bundle
Was das Bundle mitbringt
Backend
Ein Modul Internetschach unter Inhalte mit fünf Tabellen:
| Tabelle | Inhalt |
|---|---|
tl_internetschach |
Turnierserien mit ihren Turnieren und Gruppen |
tl_internetschach_spieler |
Spielerstammdaten, importiert aus der DSB-Mitgliederverwaltung |
tl_internetschach_anmeldungen |
Anmeldungen zu den Turnieren |
tl_internetschach_tabellen |
Importierte Turniertabellen von ChessBase |
tl_internetschach_preise |
Ausgelobte Preise und ihre Gewinner |
Dazu kommen Funktionen zum Importieren, Auswerten und Exportieren:
- Spielerdaten importieren — ZIP-Datei mit
vereine.csvundspieler.csv. Achtung: ersetzt alle bisherigen Spieler der Turnierserie. - Tabelle importieren — HTML-Datei, wie ChessBase sie nach einem Turnier ausgibt.
- Qualifikationen aktualisieren — trägt anhand der Tabellen ein, wer sich für das Finale qualifiziert hat.
- Preise aktualisieren — verteilt die ausgelobten Preise auf die Platzierten.
- Excel-Export der Anmeldungen und der Preise, jeweils zusätzlich per E-Mail.
- Schnittstelle — stellt die Adresse zusammen, unter der sich die Anmeldungen abrufen lassen (siehe unten).
Inhaltselemente
| Element | Zweck |
|---|---|
internetschach_formular |
Anmeldeformular mit Spielersuche und ChessBase-Prüfung |
internetschach_anmeldungen |
Liste der Anmeldungen, mit Seitenblätterung |
internetschach_tabelle |
Eine importierte Turniertabelle als HTML |
internetschach_topspieler |
Gesamtwertung über mehrere Turniere |
Frontendmodul
internetschach_pgnreplacer — ersetzt in einer PGN-Datei die ChessBase-Konten
durch die Klarnamen aus den Anmeldungen. Noch unfertig: Das Modul nimmt die
Datei entgegen und liest sie ein, gibt aber noch nichts zurück.
Schnittstellen
Drei Adressen liefern Daten für die Weiterverarbeitung. Sie ersetzen die
früheren PHP-Dateien unter Resources/public/, die es unter Contao 5 nicht mehr
geben kann; die alten Adressen funktionieren als Weiterleitung weiter.
| Route | Adresse | Parameter |
|---|---|---|
internetschach_anmeldungen |
/internetschach/anmeldungen |
id (Turnierserie, Pflicht), turnier (Kurzzeichen, optional), format (json oder excel) |
internetschach_spielerliste |
/internetschach/spielerliste |
pid (Turnierserie), q (Suchbegriff, ab zwei Zeichen) |
internetschach_check |
/internetschach/check |
cbname (ChessBase-Konto), playerid (optional) |
Die alten Adressen /bundles/contaointernetschach/Anmeldungen.php,
…/Spielerliste.php und …/Check.php zeigen auf dieselben Routen.
Die Adresse für die Anmeldungen lässt sich im Backend zusammenklicken: auf der Übersicht der Anmeldungen einer Turnierserie über den Knopf Schnittstelle. Dort werden Turnier und Format gewählt und die fertige Adresse zum Kopieren angezeigt.
Beispiel
https://example.org/internetschach/anmeldungen?id=3&turnier=v1&format=excel
Ohne turnier kommen alle Anmeldungen der Serie, ohne format kommt JSON.
Ausgegeben werden ausschließlich veröffentlichte Anmeldungen.
Entwicklung
composer install --no-plugins vendor/bin/phpunit
--no-plugins ist nötig, weil die Contao-Composer-Plugins für die reinen
Unit-Tests nicht gebraucht werden und sonst freigeschaltet werden müssten.
Lizenz
LGPL-3.0-or-later