{% extends 'signage/_layout.html.twig' %} {% import 'signage/_macros.html.twig' as sg %} {% block signage_title %}Geräte{% endblock %} {% set source_labels = {'default': 'Standard', 'event': 'Termin', 'command': 'Sofort'} %} {% block signage_content %}

Geräte

{% set online = rows|filter(r => r.status.reachable)|length %} {{ online }} von {{ rows|length }} online Aktualisiert sich alle 30 Sekunden.
{% if is_granted('ROLE_SIGNAGE_ADMIN') %}
Gerät anlegen
{% endif %}
{% if rows is empty %}
Noch kein Gerät

Lege ein Gerät an, wähle eine Standard-Playlist und richte den Player mit dem Einrichtungscode ein.

{% if is_granted('ROLE_SIGNAGE_ADMIN') %}Gerät anlegen{% endif %}
{% else %}
{% for row in rows %} {% set s = row.status %} {% set d = row.device %}

{{ d.name }}

{{ d.mode == 'split' ? 'Zwei Bildschirme' : 'Gespiegelt' }}
{{ d.deviceKey }}
{{ sg.release_steps(s, true) }} {% if s.release_state == 'transferring' and s.download and s.download.percent is not null %}
{{ s.download.percent }} % übertragen
{% endif %}
{% for o in s.outputs %}
{{ o.target }}
{{ o.playlist_id ?? 'keine Playlist' }}
{% if o.source %}{{ source_labels[o.source] ?? o.source }}{% endif %}
{% else %}
Noch keine Angaben vom Gerät.
{% endfor %}
{% if s.errors is not empty %}
    {% for e in s.errors|slice(0, 3) %}
  • {{ e }}
  • {% endfor %}
{% endif %}
{% if s.last_heartbeat_at %}{{ s.last_heartbeat_at|date('d.m. H:i', 'Europe/Berlin') }}{% else %}nie{% endif %} {% if s.disk_free_bytes is not null %}{{ sg.bytes(s.disk_free_bytes) }} frei{% endif %} {% if d.playerVersion %}{{ d.playerVersion }}{% endif %}
{% endfor %}
{% endif %} {% endblock %}