94 lines
4.8 KiB
Plaintext
94 lines
4.8 KiB
Plaintext
@page "/Users/{baid:int}/AccessCode"
|
|
@inject HttpClient Client
|
|
@inject IDialogService DialogService
|
|
@inject LoginService LoginService
|
|
@inject NavigationManager NavigationManager
|
|
@inject TaikoWebUI.Utilities.StringUtil StringUtil;
|
|
|
|
@if (response is not null)
|
|
{
|
|
@if ((LoginService.LoginRequired && (!LoginService.IsLoggedIn || (LoginService.GetLoggedInUser().Baid != Baid && !LoginService.IsAdmin))) || User is null)
|
|
{
|
|
if (!LoginService.IsLoggedIn)
|
|
{
|
|
NavigationManager.NavigateTo("/Login");
|
|
}
|
|
else
|
|
{
|
|
NavigationManager.NavigateTo("/");
|
|
}
|
|
}
|
|
else
|
|
{
|
|
<MudBreadcrumbs Items="breadcrumbs" Class="p-0 mb-2"></MudBreadcrumbs>
|
|
<MudText Typo="Typo.h4">Access Codes</MudText>
|
|
<MudGrid Class="my-4 pb-10">
|
|
<MudItem xs="12">
|
|
<MudCard Outlined="true" Class="mb-6">
|
|
<MudCardContent>
|
|
<MudGrid Spacing="3">
|
|
<MudItem xs="12">
|
|
<MudText Typo="Typo.h6">Add Access Code</MudText>
|
|
<MudForm @ref="bindAccessCodeForm">
|
|
<MudGrid Spacing="2" Class="mt-4">
|
|
<MudItem xs="12" md="10">
|
|
<MudTextField @bind-value="inputAccessCode" InputType="InputType.Text" T="string"
|
|
FullWidth="true" Required="@true" RequiredError="Access Code is required" Variant="Variant.Outlined" Margin="Margin.Dense"
|
|
Label="New Access Code" />
|
|
</MudItem>
|
|
<MudItem xs="12" md="2">
|
|
<MudButton OnClick="OnBind" FullWidth="true" StartIcon="@Icons.Material.Filled.AddCard" Color="Color.Primary" Variant="Variant.Filled" Class="mt-1">Add</MudButton>
|
|
</MudItem>
|
|
</MudGrid>
|
|
</MudForm>
|
|
</MudItem>
|
|
</MudGrid>
|
|
</MudCardContent>
|
|
</MudCard>
|
|
|
|
<MudCard Outlined="true">
|
|
<MudCardContent>
|
|
<MudGrid Spacing="3" Class="pb-2">
|
|
<MudItem xs="12">
|
|
<MudText Typo="Typo.h6">Access Codes</MudText>
|
|
</MudItem>
|
|
@for (var idx = 0; idx < User.AccessCodes.Count; idx++)
|
|
{
|
|
var accessCode = User.AccessCodes[idx];
|
|
var localIdx = idx + 1;
|
|
<MudItem xs="12" Class="py-0">
|
|
<div Style="border-bottom:1px solid #eee; padding: 5px 0;">
|
|
<MudGrid Spacing="2" Class="d-flex align-center">
|
|
<MudItem xs="12" md="8" Class="d-flex align-center">
|
|
<pre class="mb-0" style="font-size:16px">
|
|
@foreach (var digitGroup in StringUtil.SplitIntoGroups(accessCode, 4))
|
|
{
|
|
<span class="mr-2">@digitGroup</span>
|
|
}
|
|
</pre>
|
|
</MudItem>
|
|
<MudItem xs="12" md="4" Class="d-flex justify-end">
|
|
<MudButton OnClick="@(_ => DeleteAccessCode(accessCode))"
|
|
Size="Size.Small" Variant="Variant.Text" StartIcon="@Icons.Material.Filled.Delete"
|
|
Color="Color.Error">
|
|
@Localizer["Delete"]
|
|
</MudButton>
|
|
</MudItem>
|
|
</MudGrid>
|
|
</div>
|
|
</MudItem>
|
|
}
|
|
</MudGrid>
|
|
</MudCardContent>
|
|
</MudCard>
|
|
</MudItem>
|
|
</MudGrid>
|
|
|
|
}
|
|
}
|
|
else
|
|
{
|
|
<MudContainer Style="display:flex;margin:50px 0;align-items:center;justify-content:center;">
|
|
<MudProgressCircular Indeterminate="true" Size="Size.Large" Color="Color.Primary" />
|
|
</MudContainer>
|
|
} |