Der GExtension-Abgleich liefert die Käufe, der Verbrauch steht im Forum. Die App liest jetzt die drei CC-Boards und sammelt die Anträge. Gelesen wird nur die Board-Übersicht: sie führt bereits den Ersteller, nicht nur den letzten Antwortenden. Damit bleibt ein Lauf bei wenigen Anfragen statt einer je Thread. Unterforen und globale Kästen tragen ebenfalls Thread-Links, deshalb liest der Parser strikt entlang der Listeneinträge - sonst landen Changelogs und Bewerbungen in der Antragsliste. Klassifiziert wird ausschließlich von Hand. Weder Titel noch Board sind verlässlich genug: Threads werden nicht immer verschoben, ein genehmigter Antrag kann weiter im Antrags-Board liegen. Das Board steht deshalb nur als Hinweis an der Zeile. Angenommene Anträge rufen dieselben Aktionen wie die Knöpfe auf der Spielerseite, es gibt keinen zweiten Buchungsweg mit eigenen Regeln. Wandert ein bereits entschiedener Thread später in ein anderes Board, erscheint das als Hinweis zum Abhaken - der CC-Status ändert sich nie von allein. Die Thread-ID bleibt beim Verschieben stabil und traegt deshalb die Wiedererkennung; die Board-Historie wird mitgeschrieben. Zurückgelassene Verweise erkennt der Parser und zählt sie nicht als eigenen Antrag.
43 lines
1.6 KiB
Bash
43 lines
1.6 KiB
Bash
# Kopie als .env neben die compose.yaml legen und Werte ersetzen.
|
|
|
|
# Passwort des Datenbank-Nutzers. Lang und zufällig wählen.
|
|
# Achtung: Ein $ im Wert wird von Docker Compose als Variable gedeutet und
|
|
# verschluckt. Entweder $ vermeiden oder als $$ schreiben.
|
|
DB_PASSWORD=hier-ein-langes-zufälliges-passwort
|
|
|
|
# Schlüssel für Sitzungen und CSRF-Token, mindestens 32 Zeichen.
|
|
# Erzeugen z. B. mit: openssl rand -base64 48
|
|
SESSION_SECRET=hier-einen-langen-zufallsstring-einsetzen
|
|
|
|
# Erster Administrator, wird nur angelegt solange noch kein Konto existiert.
|
|
# Bleibt das Passwort leer, erzeugt die App eines und schreibt es einmalig
|
|
# ins Container-Log. In beiden Fällen ist ein Wechsel beim ersten Login Pflicht.
|
|
BOOTSTRAP_ADMIN_USER=admin
|
|
BOOTSTRAP_ADMIN_PASSWORD=
|
|
|
|
# --- Optional ---
|
|
|
|
# Name des Docker-Netzwerks, in dem der Reverse Proxy läuft. Der Proxy legt es
|
|
# an; bei Nginx Proxy Manager heisst es meist nginx_default.
|
|
# PROXY_NETWORK=nginx_default
|
|
|
|
# Adresse der GExtension-Instanz für den Paket-Abgleich. Der Parser ist auf
|
|
# deren Seitenaufbau gebaut; ein anderes Shop-System lässt sich damit nicht
|
|
# auslesen. Leer lassen, wenn der Abgleich nicht genutzt wird.
|
|
# GEXTENSION_BASE_URL=https://gextension.senseigaming.de
|
|
|
|
# Adresse des Forums für den Antrags-Abgleich. Der Parser ist auf WoltLab
|
|
# (Burning Board) zugeschnitten.
|
|
# FORUM_BASE_URL=https://senseigaming.de/forum
|
|
|
|
# Aufbewahrung der Audit-Einträge in Tagen (Standard: 365, 0 = nie löschen).
|
|
# AUDIT_RETENTION_DAYS=365
|
|
|
|
# Gueltigkeit einer Sitzung in Stunden (Standard: 12).
|
|
# SESSION_TTL_HOURS=12
|
|
|
|
# Nur abschalten, wenn ohne HTTPS getestet wird.
|
|
# COOKIE_SECURE=true
|
|
|
|
# LOG_LEVEL=info
|