Search by

schachbulle / contao-tributes-bundle

Samson1964

Verwaltet Ehrungen des Deutschen Schachbundes und gibt sie im Frontend aus.

Package info

github.com/Samson1964/contao-tributes-bundle

Type:contao-bundle

pkg:composer/schachbulle/contao-tributes-bundle

Statistics

Installs: 33

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

3.0.0 2026-09-03 07:07 UTC

This package is auto-updated.

Last update: 2026-09-03 07:08:46 UTC


README

Contao-Erweiterung zur Verwaltung der Ehrungen des Deutschen Schachbundes. Ehrungen werden im Backend in Listen gepflegt, im Frontend über ein Inhaltselement ausgegeben und — sofern die geehrte Person mit dem Spielerregister verknüpft ist — für eine Geburtstagserinnerung per E-Mail herangezogen.

Autor: Frank Hoppe

Anforderungen

PHP 7.4 oder neuer, geprüft bis 8.4
Contao 4.13 LTS oder 5.x, geprüft gegen 4.13.58 und 5.7.7
Weitere Pakete menatwork/contao-multicolumnwizard-bundle, schachbulle/contao-spielerregister-bundle

Installation

composer require schachbulle/contao-tributes-bundle

Anschliessend die Datenbank aktualisieren (Contao Manager oder vendor/bin/contao-console contao:migrate).

Backend

Im Bereich Inhalte erscheint das Modul Ehrungen. Es kennt zwei Ebenen:

  • Ehrungsliste (tl_tributes) — der Behälter, etwa „Goldene Ehrennadel des DSB“ oder „Ehrenmitglieder des DSB“. Titel, Alias und Veröffentlichung.
  • Ehrung (tl_tributes_items) — der einzelne Eintrag mit Jahr, Name, Bild, Weblink, Kurz- und Langinformation sowie einer internen Bemerkung.

Über das Feld Eintrag im Spielerregister lässt sich eine Ehrung mit einer Person aus schachbulle/contao-spielerregister-bundle verknüpfen. Nur verknüpfte Personen erscheinen in der Geburtstagserinnerung; in der Listenansicht zeigt ein grünes beziehungsweise rotes Symbol, ob die Verknüpfung besteht.

Frontend

Das Inhaltselement Ehrungsliste (Bereich „Include-Elemente“) gibt eine Liste als Tabelle aus. Template: mod_tributes_liste.html5.

Bereitgestellte Template-Variablen:

Variable Bedeutung
item Feld der Ehrungen mit year, url, target, name, info, image, thumbnail
view_year wahr, wenn mindestens ein Eintrag ein Jahr hat
view_url wahr, wenn mindestens ein Eintrag einen Weblink hat
view_info wahr, wenn mindestens ein Eintrag eine Kurzinformation hat

Ist eine Ehrung mit dem Spielerregister verknüpft, wird der Name auf person/player/<ID>.html verlinkt und bei verstorbenen Personen ein Kreuz angehängt. Diese Adresse ist fest verdrahtet und setzt voraus, dass das Spielerregister genau dort erreichbar ist.

Geburtstagserinnerung

Die Erweiterung prüft vier Stichtage — heute, morgen, in einer Woche und in zwei Wochen — und verschickt für die dann anstehenden Geburtstage geehrter Personen eine Sammelmail. Ehrungen aus der „Goldenen Ehrennadel des DSB“ und den „Ehrenmitgliedern des DSB“ gehen zusätzlich über ein SMS-Gateway hinaus.

Eingerichtet wird das unter System → Einstellungen, Abschnitt Ehrungen: Absender, Betreff und die Empfängerliste (der erste aktive Eintrag steht im To-Feld, alle weiteren in Kopie) sowie die Zugangsdaten des SMS-Gateways.

Angestossen wird der Versand über einen Seitenaufruf, gedacht für einen täglichen Cron-Auftrag beim Hoster:

https://www.beispiel.de/ehrungen/geburtstage

Die frühere Adresse /bundles/contaotributes/ehrungen.php funktioniert weiterhin; sie ist als zweite Route auf denselben Controller gelegt. Die Antwort ist ein kurzer Textbericht ohne Namen und Geburtsdaten, damit im Cron-Protokoll keine personenbezogenen Angaben landen.

Hinweis: Der Aufruf ist nicht gegen Fremdzugriff geschützt — wer die Adresse kennt, kann den Versand auslösen. Das war in der Vorgängerfassung ebenso. Wo das stört, hilft eine Sperre im Webserver.

Prüfstand

tests/pruefstand.php lädt das Bundle gegen eine vorhandene Contao-Installation und prüft Klassen, DCA-Dateien, Sprachdateien, Dienst- und Routendefinitionen sowie die Dateikodierung:

C:\xampp\php\php.exe tests/pruefstand.php F:\Claude\contao-test-413
C:\xampp\php\php.exe tests/pruefstand.php F:\Claude\contao-test

Der Rückgabewert ist 0, wenn alle Prüfungen bestanden wurden.

Lizenz

LGPL-3.0-or-later, siehe LICENSE.