package manage const loginTmpl = ` Anmelden – morz infoboard

Anmelden

{{if .Error}}
{{.Error}}
{{end}}
{{if .Next}} {{end}}
` const provisionTmpl = ` Einrichten – {{.Screen.Name}}
✓ Screen «{{.Screen.Name}}» ({{.Screen.Slug}}) wurde im Backend angelegt.
Führe die folgenden Schritte auf deinem Ansible-Host aus, um den Bildschirm zu provisionieren.
1

Host zur Ansible-Inventardatei hinzufügen

Öffne ansible/inventory.yml und füge den Host unter signage_players → hosts ein:

        {{.Screen.Slug}}:
2

Host-Variablen anlegen

Erstelle die Datei ansible/host_vars/{{.Screen.Slug}}/vars.yml mit folgendem Inhalt:

---
ansible_host: {{.IP}}
ansible_user: {{.SSHUser}}
screen_id: {{.Screen.Slug}}
screen_name: "{{.Screen.Name}}"
screen_orientation: {{.Orientation}}

Tipp: mkdir -p ansible/host_vars/{{.Screen.Slug}}

3

SSH-Zugang sicherstellen

Stelle sicher, dass dein SSH-Key auf dem Zielgerät hinterlegt ist:

ssh-copy-id {{.SSHUser}}@{{.IP}}
4

Ansible-Playbook ausführen

Führe das Playbook vom Projektverzeichnis aus aus. Das installiert den Agent, konfiguriert Chromium und startet den Kiosk-Modus:

cd /path/to/morz-infoboard
ansible-playbook -i ansible/inventory.yml ansible/site.yml --limit {{.Screen.Slug}}

Falls du einen Vault-Pass verwendest: --vault-password-file ansible/.vault_pass

5

Fertig — Playlist befüllen

Nach erfolgreichem Ansible-Lauf meldet sich der Bildschirm automatisch im Backend an und lädt seine Playlist. Jetzt kannst du Inhalte zuweisen:

Playlist für «{{.Screen.Name}}» verwalten →
` const adminTmpl = ` MORZ Infoboard – Admin

Bildschirme

{{if .Screens}}
{{range .Screens}} {{end}}
Name Slug Format Status Aktionen
{{.Name}} {{.Slug}} {{orientationLabel .Orientation}} Playlist verwalten  
{{else}}

Noch keine Bildschirme angelegt.

{{end}}

Neuen Bildschirm einrichten

Fülle die Angaben aus. Der Bildschirm wird im Backend angelegt und du erhältst eine Schritt-für-Schritt-Anleitung mit allen nötigen Befehlen für das Ansible-Deployment.

Eindeutig, URL-sicher — wird als screen_id verwendet

Bestehenden Screen manuell anlegen

Nur DB-Eintrag, kein Deployment (aufklappen)
` const manageTmpl = ` Playlist – {{.Screen.Name}}

Aktuelle Playlist

{{if .Items}}
{{range .Items}} {{end}}
Typ Titel / Quelle Dauer Status Aktionen
{{typeIcon .Type}} {{.Type}}
{{if .Title}}{{.Title}}{{else}}{{shortSrc .Src}}{{end}}
{{if .Title}}{{shortSrc .Src}}{{end}}
{{.DurationSeconds}} s {{if .Enabled}} Aktiv {{else}} Deaktiviert {{end}}

Einträge per Drag & Drop in der Reihenfolge verschieben.

{{else}}
Die Playlist ist noch leer. Füge unten Medien aus der Bibliothek hinzu oder lade neue Dateien hoch.
{{end}}

Medienbibliothek

{{if .Assets}}
{{range .Assets}} {{end}}
Typ Titel Quelle Aktionen
{{typeIcon .Type}} {{.Type}} {{.Title}} {{if .StoragePath}}{{shortSrc .StoragePath}}{{else}}{{shortSrc .OriginalURL}}{{end}} {{if index $.AddedAssets .ID}} ✓ In Playlist {{else}}
  {{end}}
{{else}}

Noch keine Medien hochgeladen. Lade unten eine Datei hoch oder füge eine Webseite hinzu.

{{end}}

Neues Medium hinzufügen

`