41 lines
1.7 KiB
Markdown
41 lines
1.7 KiB
Markdown
# Wegwichtel Streckeneditor - einfache Fassung mit Tests
|
|
|
|
Dieses Paket ergänzt die Oberfläche um einen einfachen Streckeneditor auf der Streckenauswahl und liefert passende Tests mit.
|
|
|
|
## Enthaltene Dateien
|
|
|
|
- `public/index.html`
|
|
- neuer Abschnitt `Strecken verwalten` mit rundem Plus-Button
|
|
- neues Dialogfenster `#editor-dialog`
|
|
- Einbindung von `css/editor.css` und `js/editor-ui.js`
|
|
- `public/css/editor.css`
|
|
- eigenständige Editor-Styles
|
|
- `public/js/editor-ui.js`
|
|
- Editor-Dialog, Streckenliste, Streckendetailformular, POI-Formular
|
|
- POI-Sortierung per Pfeil nach oben/unten
|
|
- Upload einer Audiodatei und beliebig vieler Bilder pro POI
|
|
- `database/migrations/20260901_add_route_activated_at.sql`
|
|
- ergänzt `routes.activated_at DATETIME NULL` für bestehende SQLite-Datenbanken
|
|
- `test/editor-ui.test.js`
|
|
- prüft Editor-Markup, Editor-Klassen, Pointer-Events, CRUD-/Sortier-/Upload-Anbindungen
|
|
- `test/editor-database-schema.test.js`
|
|
- prüft, dass `activated_at DATETIME NULL` über Schema oder Migration verfügbar ist
|
|
|
|
## Datenbank
|
|
|
|
Neue Strecken bleiben fachlich Entwürfe, solange `routes.activated_at` NULL ist. Die Aktivierung wird in dieser Fassung nicht durch die Programmlogik gesetzt.
|
|
|
|
Für bestehende SQLite-Datenbanken:
|
|
|
|
```sh
|
|
sqlite3 <pfad-zur-wegwichtel-db> < database/migrations/20260901_add_route_activated_at.sql
|
|
```
|
|
|
|
Falls `database/schema.sql` für komplett neue Datenbanken ohne Migrationslauf verwendet wird, muss dort in der `routes`-Tabelle zusätzlich diese Spalte enthalten sein:
|
|
|
|
```sql
|
|
activated_at DATETIME NULL
|
|
```
|
|
|
|
Das Paket ersetzt `database/schema.sql` bewusst nicht blind, damit bestehende Tabellen, Indizes und Trigger nicht versehentlich überschrieben werden.
|