add route moderation script
Sonarqube Scanner / Prepare environment (push) Successful in 7s
Sonarqube Scanner / Build and test (push) Failing after 22s
Sonarqube Scanner / SonarQube analysis (push) Skipped
Sonarqube Scanner / Deploy to Server (push) Successful in 8s

This commit is contained in:
Florian Zumpe
2026-10-03 11:57:27 +02:00
parent bbb1834709
commit 2e0b91243d
4 changed files with 247 additions and 1 deletions
+36
View File
@@ -17,6 +17,42 @@ Die API-Basisadresse ist standardmäßig `https://wegwichtel.de`. Alle Skripte u
## Routen
### Lokale Moderation auf dem Server
`moderate_routes.py` greift direkt auf die bestehende SQLite-Datenbank zu und
benötigt keine API-Verbindung. Ohne Parameter zeigt es alle Strecken mit ID,
Name, Status und Freigabezeitpunkt an:
```bash
python3 tools/python/moderate_routes.py
python3 tools/python/moderate_routes.py --enable 12
python3 tools/python/moderate_routes.py --disable 12
```
Alternativ aus dem Projektverzeichnis über npm:
```bash
npm run moderate
npm run moderate -- -e 12
npm run moderate -- -d 12
```
Das `--` trennt die npm-Optionen von den Parametern des Moderationsskripts.
Kurzformen: `-e 12` und `-d 12`. `--enanble` wird als Alias für `--enable`
unterstützt. Freigeben setzt `activated_at` auf den aktuellen UTC-Zeitstempel;
Zurückziehen setzt es auf `NULL`. Gelöschte Strecken werden nicht freigegeben.
Das Skript liest `.env` im Projektverzeichnis, unabhängig vom Arbeitsverzeichnis.
`DATA_DIR` bestimmt das Datenverzeichnis, standardmäßig `data`; darin liegt
`wegwichtel.sqlite`. Bereits gesetzte Umgebungsvariablen haben Vorrang wie beim
App-Start. Die `.env` unterstützt einzeilige Werte, Anführungszeichen, Kommentare
und `export`; sie wird nicht als Shell-Skript ausgeführt. Eine fehlende Datenbank
wird nicht neu angelegt. Der aufrufende Benutzer benötigt die entsprechenden
Dateirechte für Datenbank und Datenverzeichnis.
### Bearbeitung über die API
```bash
python3 tools/python/create_route.py
python3 tools/python/update_route.py