- Bugfix: auftragskatalog.html hatte Select/Deselect-Formular-Ziele fest
auf /geraete/... verdrahtet statt zurueck_url zu nutzen - Admin-Ansicht
eines fremden-Org-Geraets scheiterte dadurch mit 404. Jetzt dynamisch.
- Herkunfts-Anzeige ('via OE'/'via Gruppe') ist jetzt anklickbar, sofern
ein Sprungziel existiert (neue anreichere_mit_quelle_url()-Hilfsfunktion
in routers/geraete.py, von geraete.py und admin_geraete.py genutzt).
- Admin-Geräteliste (/admin/geraete) bekommt OE-Spalte + 'In OE
verschieben', analog zur Kundenportal-Liste.
- Neue, bewusst schlanke Admin-OE-Ansicht
(/admin/kunden/{org}/organisationseinheiten/{oe}/merkmale) - nur der
Merkmale-Editor als Sprungziel, kein OE-CRUD (bleibt laut ADR-0012
Kunden-Self-Service unter /struktur).
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
56 lines
2.6 KiB
HTML
56 lines
2.6 KiB
HTML
{% extends "admin/layout.html" %}
|
|
{% block title %}OE-Merkmale — Tuxflotte Admin{% endblock %}
|
|
{% block admin_content %}
|
|
<p><a href="/admin/kunden/{{ organization_id }}">← Organisation</a></p>
|
|
<h2>Merkmale dieser OE</h2>
|
|
<p><small>"Nicht festgelegt" überlässt die Entscheidung einer übergeordneten OE bzw. dem Workspace-Standard des Geräts. Die OE-Struktur selbst wird im Kundenportal verwaltet (Self-Service), diese Seite dient nur der Merkmal-Konfiguration.</small></p>
|
|
|
|
{% if not kategorien %}
|
|
<p>Keine katalogfähigen Merkmale vorhanden.</p>
|
|
{% else %}
|
|
{% for kategorie_name, eintraege in kategorien.items() %}
|
|
<h4>{{ kategorie_name }}</h4>
|
|
<figure>
|
|
<table>
|
|
<tbody>
|
|
{% for eintrag in eintraege %}
|
|
<tr>
|
|
<td>
|
|
<strong>{{ eintrag.name }}</strong>
|
|
{% if eintrag.description %}<br><small>{{ eintrag.description }}</small>{% endif %}
|
|
</td>
|
|
<td>
|
|
{% if eintrag.aktiv is none %}
|
|
<span class="state-absent">nicht festgelegt</span>
|
|
{% elif eintrag.aktiv %}
|
|
<span class="state-present">aktiv</span>
|
|
{% else %}
|
|
<span class="state-absent">inaktiv</span>
|
|
{% endif %}
|
|
</td>
|
|
<td>
|
|
{% if eintrag.aktiv != true %}
|
|
<form method="post" action="/admin/kunden/{{ organization_id }}/organisationseinheiten/{{ oe_id }}/merkmale/{{ eintrag.merkmal }}/select" style="display:inline">
|
|
<button type="submit">Aktiv</button>
|
|
</form>
|
|
{% endif %}
|
|
{% if eintrag.aktiv != false %}
|
|
<form method="post" action="/admin/kunden/{{ organization_id }}/organisationseinheiten/{{ oe_id }}/merkmale/{{ eintrag.merkmal }}/deselect" style="display:inline">
|
|
<button type="submit" class="secondary">Inaktiv</button>
|
|
</form>
|
|
{% endif %}
|
|
{% if eintrag.aktiv is not none %}
|
|
<form method="post" action="/admin/kunden/{{ organization_id }}/organisationseinheiten/{{ oe_id }}/merkmale/{{ eintrag.merkmal }}/unset" style="display:inline">
|
|
<button type="submit" class="outline">Zurücksetzen</button>
|
|
</form>
|
|
{% endif %}
|
|
</td>
|
|
</tr>
|
|
{% endfor %}
|
|
</tbody>
|
|
</table>
|
|
</figure>
|
|
{% endfor %}
|
|
{% endif %}
|
|
{% endblock %}
|