App Report via Export Jobs, Umlaut-Suche, Geräte-Export, Mitglieder entfernen

- App Report: Zahlen per AppInstallStatusAggregate Export Job (ZIP/CSV)
- Geräte-Export: getDeviceInstallStatusReport statt deviceStatuses
- Benutzersuche: ConsistencyLevel+$count für Umlaut-Kompatibilität
- Gruppen: Mitglieder entfernen in modalMembers und Group Explorer (gex)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-07-22 07:23:04 +02:00
co-authored by Claude Sonnet 4.6
parent 0174ca1036
commit 2f0af6e577
5 changed files with 256 additions and 70 deletions
+15 -1
View File
@@ -506,6 +506,14 @@ html[data-theme="dark"] .theme-ico-moon { opacity: 1; }
border-color: var(--surface-strong);
}
.btn-danger {
background: var(--error);
color: #fff;
border-color: var(--error);
}
.btn-danger:hover:not(:disabled) { filter: brightness(1.1); }
.btn-danger:disabled { opacity: .45; }
.btn-text {
background: transparent;
color: var(--muted);
@@ -4674,12 +4682,18 @@ html[data-theme="dark"] .numInputWrapper span.arrowDown {
.gex-user-item {
display: flex;
align-items: baseline;
align-items: center;
gap: 8px;
padding: 6px 12px;
border-bottom: 1px solid var(--hairline-soft);
font-size: 13px;
cursor: default;
}
.gex-user-item input[type="checkbox"] {
flex-shrink: 0;
cursor: pointer;
}
.gex-user-item input[type="checkbox"] + .gex-user-name { cursor: pointer; }
.gex-user-item:last-child { border-bottom: none; }
.gex-user-item.hidden-filter { display: none; }