Gruppen-Dropdown: kompaktere Rechtetabelle, Modal bleibt unveraendert
- permission_tree() bekommt einen dritten Parameter compact=false, der nur im Dropdown der Hauptseite (Admin-/System-/editierbare Gruppen) auf true gesetzt wird, nicht im "Neue Gruppe"-Modal. - .permission-groups-row--compact verkleinert Zeilen-/Spalten-Padding und die Einrueckung der Unterpunkte (32px statt 48px) NUR fuer diese Instanzen - das Modal behaelt exakt sein bisheriges Aussehen. - Modal und Dropdown nutzen weiterhin denselben Code/dieselbe Struktur (permission_table()-Macro, Kill-Switch-Logik, JS-Gating), nur die Abstaende unterscheiden sich ueber die Zusatzklasse. - Verifiziert per Screenshot: Dropdown jetzt sichtbar kompakter (engere Zellen, kuerzere Zeilen), Modal unveraendert; Gruppen anlegen-mit- Rechten und Gruppen-Bearbeiten-Regression funktionieren weiterhin. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -1118,6 +1118,16 @@ select {
|
||||
.permission-table td:first-child, .permission-table th:first-child { text-align: left; padding-right: 14px; padding-left: 0; }
|
||||
.permission-table tbody tr:last-child td { border-bottom: none; }
|
||||
.permission-row-label { color: var(--text-dim); padding-left: 48px !important; }
|
||||
/* Kompakte Variante nur für das Gruppen-Dropdown auf der Hauptseite
|
||||
(permission_tree(..., compact=true)) — schmalere Zellen und niedrigere
|
||||
Zeilen als im "Neue Gruppe"-Modal, das unverändert bleibt. */
|
||||
.permission-groups-row--compact { gap: 20px; }
|
||||
.permission-groups-row--compact .permission-group-col { padding-right: 20px; }
|
||||
.permission-groups-row--compact .permission-table th,
|
||||
.permission-groups-row--compact .permission-table td { padding: 3px 7px; }
|
||||
.permission-groups-row--compact .permission-table td:first-child,
|
||||
.permission-groups-row--compact .permission-table th:first-child { padding-right: 10px; }
|
||||
.permission-groups-row--compact .permission-row-label { padding-left: 32px !important; }
|
||||
/* Sichtbares Ausgrauen, solange der Kill-Switch des Bereichs aus ist —
|
||||
zusätzlich zum disabled-Attribut, das der Browser nur dezent abblendet
|
||||
(siehe applyPermissionGating() im Script-Block). */
|
||||
|
||||
@@ -70,8 +70,12 @@
|
||||
</div>
|
||||
{% endmacro %}
|
||||
|
||||
{% macro permission_tree(checked_keys, readonly) %}
|
||||
<div class="permission-groups-row">
|
||||
{# compact=true (Gruppen-Dropdown auf der Hauptseite) verkleinert Zellen-
|
||||
Padding/Abstände gegenüber dem "Neue Gruppe"-Modal (compact=false, bleibt
|
||||
unverändert) — gleicher Aufbau, nur enger, da im Dropdown mehr Breite
|
||||
zur Verfügung steht als im schmalen Modal und es sonst auseinandergezogen wirkt. #}
|
||||
{% macro permission_tree(checked_keys, readonly, compact=false) %}
|
||||
<div class="permission-groups-row{{ ' permission-groups-row--compact' if compact }}">
|
||||
{% for group_key, group in permission_catalog.items() %}
|
||||
{{ permission_table(group, group_key, checked_keys, readonly) }}
|
||||
{% endfor %}
|
||||
@@ -132,7 +136,7 @@
|
||||
</tr>
|
||||
<tr class="group-detail-row hidden" id="detail-admin">
|
||||
<td colspan="3">
|
||||
{{ permission_tree(admin_virtual_group.permissions, true) }}
|
||||
{{ permission_tree(admin_virtual_group.permissions, true, true) }}
|
||||
<p class="text-faint" style="font-size:11.5px; margin:12px 0 0;">Admins dürfen immer alles — diese Rechte sind fest und nicht änderbar.</p>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -176,7 +180,7 @@
|
||||
<input type="hidden" name="permissions_submitted" value="1">
|
||||
<input type="hidden" name="group_id" value="{{ g.id }}">
|
||||
<input type="hidden" name="name" value="{{ g.name }}">
|
||||
{{ permission_tree(g.permissions, false) }}
|
||||
{{ permission_tree(g.permissions, false, true) }}
|
||||
<div class="flex" style="justify-content:flex-end; margin-top:16px;">
|
||||
<button type="submit" class="btn btn-primary btn-sm">
|
||||
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M20 6L9 17l-5-5"/></svg>
|
||||
@@ -185,7 +189,7 @@
|
||||
</div>
|
||||
</form>
|
||||
{% else %}
|
||||
{{ permission_tree(g.permissions, true) }}
|
||||
{{ permission_tree(g.permissions, true, true) }}
|
||||
{% if g.is_system %}
|
||||
<p class="text-faint" style="font-size:11.5px; margin:12px 0 0;">Die Standardgruppe „Benutzer“ ist eine Systemgruppe — ihre Rechte sind fest und nicht änderbar.</p>
|
||||
{% endif %}
|
||||
|
||||
Reference in New Issue
Block a user