bulletboards/ImageBoardServerApp/Shared/Components/Board.razor
2023-05-31 14:50:05 +02:00

67 lines
No EOL
1.5 KiB
Text

@using ImageBoardServerApp.Util
@using System.ComponentModel.DataAnnotations
@inject NavigationManager navigationManager;
<img class="banner" src="img/static/banner/@board.Tag ban.png" alt="No Banner found"/>
<PageTitle>/@board.Tag/ - @board.Topic - BulletBoard</PageTitle>
<AuthorizeView>
<Authorized>
<div class="boardHeader">
<h3>@board.Topic Board</h3>
<PostForm board="@board"/>
<PageFooter/>
</div>
<br/>
<br/>
<h3>Threads</h3>
<br/>
@if (posts != null)
{
@if (posts.Any())
{
@foreach(var post in posts)
{
<Post post="@post" showOpenThread="true"></Post>
<hr/>
}
}
}
else
{
<p>
<em>Loading Posts...</em>
</p>
}
</Authorized>
<NotAuthorized>
<div class="notLoggedIn">
<span>You are not logged in.</span>
<a class="navbar-brand" href="/sys/login">Please login first.</a>
</div>
</NotAuthorized>
</AuthorizeView>
@code {
private List<PostData> posts;
protected override async Task OnParametersSetAsync()
{
try
{
posts = await TheManager.getPostList(board.Tag);
}
catch
{
navigationManager.NavigateTo("/sys/dead");
}
}
[Parameter]
[Required]
public BoardData board { get; set; }
}