@page "/admin/users" @rendermode InteractiveServer @attribute [Authorize(Policy = "AdminOnly")] @inject AuthService AuthService @inject ISnackbar Snackbar @inject AuthenticationStateProvider AuthStateProvider Benutzerverwaltung – Timetracker @if (_loading) { Lade Benutzer… } else { @* ── Header ── *@ Benutzerverwaltung @_users.Count Benutzer registriert @* ── Tabelle ── *@ ID Benutzername Aktionen @context.Id @context.Username @if (context.Username == "marc") { Admin } @if (context.Username != "marc") { } Keine Benutzer gefunden. } @code { private List _users = []; private bool _loading = true; protected override async Task OnInitializedAsync() { var claim = (await AuthStateProvider.GetAuthenticationStateAsync()) .User.FindFirst(ClaimTypes.NameIdentifier); if (claim == null) return; _users = await AuthService.GetAllUsersAsync(); _loading = false; } private async Task DeleteUser(User user) { await AuthService.DeleteUserAsync(user.Id); _users.Remove(user); Snackbar.Add($"Benutzer \"{user.Username}\" gelöscht.", Severity.Info); } }