@using System.Text.Json @using TaikoWebUI.Pages.Dialogs; @using TaikoWebUI.Utilities @inject IDialogService DialogService; @inject AuthService AuthService; @inject HttpClient Client @inject NavigationManager NavigationManager @if (User is not null) {
@if (UserSetting is not null) { @UserSetting?.MyDonName } else { } @if (AuthService.LoginRequired && User?.IsAdmin == true) { @Localizer["Admin"] }
@Localizer["User ID"]: @User?.Baid
@Localizer["Show QR Code"] @Localizer["Access Codes"] @if (AuthService.OnlyAdmin || AuthService.LoginRequired) { @Localizer["Change Password"] } @if (AuthService.LoginRequired && AuthService.IsAdmin) { @Localizer["Generate Invite Code"] } @if (AuthService.LoginRequired && AuthService.IsAdmin) { @Localizer["Unregister"] } @if (AuthService.AllowUserDelete) { @Localizer["Delete User"] }
@Localizer["Access Code"] @if (User.AccessCodes.Count > 0) { @if (User.AccessCodes[0].Length % 4 == 0 && StringUtil.OnlyHexInString(User.AccessCodes[0])) { foreach (var digitGroup in StringUtil.SplitIntoGroups(User.AccessCodes[0], 4)) { @digitGroup } } else { @User.AccessCodes[0] } } else { @Localizer["N/A"] } @if (User.AccessCodes.Count > 1) { ... @Localizer["And"] @(User.AccessCodes.Count - 1) @Localizer["other access code(s)"] } else { // Empty line to keep the layout consistent } @Localizer["Edit Profile"] @Localizer["High Scores"] @Localizer["Play History"] @Localizer["Song List"] @Localizer["Dani Dojo"]
}