Userverwaltung improved

This commit is contained in:
Wieland, Marc
2026-06-08 15:45:27 +02:00
parent ee4d6cb5b1
commit dd2d47e57d
8 changed files with 164 additions and 2 deletions
+92
View File
@@ -0,0 +1,92 @@
@page "/changelog"
@rendermode InteractiveServer
@attribute [Authorize]
<PageTitle>Changelog Timetracker</PageTitle>
<MudStack Spacing="4">
@* ── Header ── *@
<MudPaper Elevation="4" Class="pa-5 rounded-xl"
Style="background: linear-gradient(135deg, #3F51B5 0%, #1A237E 100%); color:white;">
<MudStack Row="true" AlignItems="AlignItems.Center" Spacing="3">
<MudIcon Icon="@Icons.Material.Filled.NewReleases" Style="color:white; font-size:2rem" />
<MudStack Spacing="0">
<MudText Typo="Typo.h5" Style="color:white; font-weight:700">Changelog</MudText>
<MudText Typo="Typo.caption" Style="color:rgba(255,255,255,0.72)">Versionshistorie &amp; Änderungen</MudText>
</MudStack>
</MudStack>
</MudPaper>
@foreach (var release in _releases)
{
<MudCard Elevation="2" Class="rounded-xl">
<MudCardContent>
<MudStack Row="true" AlignItems="AlignItems.Center" Spacing="2" Class="mb-3">
<MudChip T="string" Color="@(release.IsLatest ? Color.Primary : Color.Default)"
Variant="Variant.Filled" Size="Size.Medium" Style="font-weight:700">
@release.Version
</MudChip>
@if (release.IsLatest)
{
<MudChip T="string" Color="Color.Success" Variant="Variant.Outlined" Size="Size.Small">
Aktuell
</MudChip>
}
<MudText Typo="Typo.body2" Color="Color.Secondary">@release.Date</MudText>
</MudStack>
<MudDivider Class="mb-3" />
<MudStack Spacing="1">
@foreach (var entry in release.Entries)
{
<MudStack Row="true" AlignItems="AlignItems.Start" Spacing="2">
<MudChip T="string" Color="@GetTagColor(entry.Tag)" Variant="Variant.Outlined"
Size="Size.Small" Style="min-width:72px; justify-content:center; font-size:0.7rem;">
@entry.Tag
</MudChip>
<MudText Typo="Typo.body2" Style="padding-top:2px">@entry.Text</MudText>
</MudStack>
}
</MudStack>
</MudCardContent>
</MudCard>
}
</MudStack>
@code {
private record ChangeEntry(string Tag, string Text);
private record Release(string Version, string Date, bool IsLatest, List<ChangeEntry> Entries);
private static Color GetTagColor(string tag) => tag switch
{
"Neu" => Color.Success,
"Fix" => Color.Error,
"Upgrade" => Color.Info,
_ => Color.Default
};
private readonly List<Release> _releases =
[
new("1.1", "08.06.2026", true,
[
new("Neu", "Versionsnummer in der Navbar mit Link zum Changelog"),
new("Neu", "Changelog-Seite"),
new("Neu", "Live-Aktualisierung der Benutzerliste bei neuer Registrierung"),
new("Neu", "Automatisches Abmelden gelöschter Benutzer"),
new("Neu", "Benutzernamen in der Benutzerverwaltung umbenennen"),
new("Upgrade", "Navbar: Benutzer und Abmelden-Button unten fixiert"),
]),
new("1.0", "20.05.2026", false,
[
new("Neu", "Erste Version des Timetrackers"),
new("Neu", "Wochenübersicht mit Arbeitszeiten und Pausen"),
new("Neu", "Monatsübersicht"),
new("Neu", "Feiertage-Verwaltung"),
new("Neu", "Urlaubs-Maximizer"),
new("Neu", "Einstellungen"),
new("Neu", "Benutzerverwaltung für Admins"),
new("Neu", "Registrierung und Login"),
]),
];
}