59 lines
2.0 KiB
Plaintext
59 lines
2.0 KiB
Plaintext
@page "/Users/{baid:int}/Songs/{songId:int}"
|
|
|
|
@inject IGameDataService GameDataService
|
|
@inject HttpClient Client
|
|
@inject LoginService LoginService
|
|
@inject NavigationManager NavigationManager
|
|
@inject IJSRuntime JSRuntime
|
|
|
|
@if (LoginService.LoginRequired && (!LoginService.IsLoggedIn || (LoginService.GetLoggedInUser().Baid != Baid && !LoginService.IsAdmin)))
|
|
{
|
|
if (!LoginService.IsLoggedIn)
|
|
{
|
|
NavigationManager.NavigateTo("/Login");
|
|
}
|
|
else
|
|
{
|
|
NavigationManager.NavigateTo("/");
|
|
}
|
|
}
|
|
else
|
|
{
|
|
if (response is not null)
|
|
{
|
|
<MudBreadcrumbs Items="breadcrumbs" Class="p-0 mb-3"></MudBreadcrumbs>
|
|
<MudText Typo="Typo.h5">@SongTitle</MudText>
|
|
<MudText Typo="Typo.body2">@SongArtist</MudText>
|
|
<MudGrid Class="my-4 pb-10">
|
|
<MudItem xs="12">
|
|
<MudCard Outlined="true" Elevation="0">
|
|
<MudCardHeader>
|
|
<MudText Typo="Typo.h6">Recent Plays</MudText>
|
|
</MudCardHeader>
|
|
<MudCardContent>
|
|
@if (SongBestData is not null && SongBestData.RecentPlayData is not null && SongBestData.RecentPlayData.Count > 0)
|
|
{
|
|
<MudTable Items="@SongBestData.RecentPlayData" Class="table-striped" Dense="true">
|
|
<HeaderContent>
|
|
<MudTh>Play Time</MudTh>
|
|
<MudTh>Difficulty</MudTh>
|
|
<MudTh>Score</MudTh>
|
|
</HeaderContent>
|
|
<RowTemplate>
|
|
<MudTd>@context.PlayTime</MudTd>
|
|
<MudTd>@context.Difficulty</MudTd>
|
|
<MudTd>@context.Score</MudTd>
|
|
</RowTemplate>
|
|
</MudTable>
|
|
}
|
|
else
|
|
{
|
|
<MudText Typo="Typo.body2">No recent plays</MudText>
|
|
}
|
|
</MudCardContent>
|
|
</MudCard>
|
|
</MudItem>
|
|
</MudGrid>
|
|
}
|
|
}
|