feat: added Board adding, editing and removing
This commit is contained in:
parent
9bdad9e48d
commit
b595ce2909
15 changed files with 222 additions and 11 deletions
|
@ -0,0 +1,45 @@
|
|||
@page "/sys/modmenu/boards"
|
||||
@using ImageBoardServerApp.Data.Repository
|
||||
<AuthorizeView Roles="Admin">
|
||||
<Authorized>
|
||||
<h3>Boards</h3>
|
||||
<span>Tag / Topic / Max Threads / GETs / Locked?</span>
|
||||
<br/>
|
||||
<hr/>
|
||||
@foreach (var b in brds)
|
||||
{
|
||||
<a href="/@b.Tag">@b.Tag</a>
|
||||
<span> / @b.Topic / @b.maxThreads / @b.NumberOfGETs / @b.isLocked / </span>
|
||||
<a href="/sys/modmenu/boards/edit/@b.Tag">Edit Board</a>
|
||||
<span> / </span>
|
||||
<a @onclick="() => removeBoard(b)" href="javascript:void(0)">Delete Board</a>
|
||||
<br/>
|
||||
<hr/>
|
||||
}
|
||||
<BoardForm/>
|
||||
</Authorized>
|
||||
<NotAuthorized>
|
||||
<DeadLink/>
|
||||
</NotAuthorized>
|
||||
</AuthorizeView>
|
||||
|
||||
@code {
|
||||
|
||||
public List<BoardData> brds { get; set; }
|
||||
protected override async Task OnParametersSetAsync()
|
||||
{
|
||||
await base.OnParametersSetAsync();
|
||||
brds = await BoardsRepository.getBoardsAsync();
|
||||
}
|
||||
|
||||
private async Task removeBoard(BoardData b)
|
||||
{
|
||||
List<PostData> postsOnB = await PostsRepository.getPostsByBoardAsync(b.Tag);
|
||||
foreach (var p in postsOnB)
|
||||
{
|
||||
await TheManager.deleteThread(p);
|
||||
}
|
||||
await BoardsRepository.deleteBoardAsync(b.BoardID);
|
||||
}
|
||||
|
||||
}
|
29
ImageBoardServerApp/Pages/Moderation/EditBoardPage.razor
Normal file
29
ImageBoardServerApp/Pages/Moderation/EditBoardPage.razor
Normal file
|
@ -0,0 +1,29 @@
|
|||
@page "/sys/modmenu/boards/edit/{Tag}"
|
||||
@using ImageBoardServerApp.Data.Repository
|
||||
<AuthorizeView Roles="Admin">
|
||||
<Authorized>
|
||||
<BoardForm Tag="@b.Tag" Topic="@b.Topic" maxThread="@mxThr" lockBoard="@b.isLocked"/>
|
||||
</Authorized>
|
||||
<NotAuthorized>
|
||||
<DeadLink/>
|
||||
</NotAuthorized>
|
||||
</AuthorizeView>
|
||||
|
||||
@code {
|
||||
[Parameter]
|
||||
public string Tag { get; set; }
|
||||
|
||||
public string mxThr { get; set; }
|
||||
|
||||
public BoardData b { get; set; }
|
||||
|
||||
protected override async Task OnParametersSetAsync()
|
||||
{
|
||||
await base.OnParametersSetAsync();
|
||||
b = await BoardsRepository.getBoardByTagAsync(Tag);
|
||||
if (b == null)
|
||||
return;
|
||||
mxThr = b.maxThreads + "";
|
||||
}
|
||||
|
||||
}
|
|
@ -8,8 +8,9 @@
|
|||
<h3>ModMenu</h3>
|
||||
<span>Welcome @mail to the mod menu</span>
|
||||
<div>
|
||||
<a href="/sys/reports">[Reports]</a>
|
||||
<a href="/sys/users">[Users]</a>
|
||||
<a href="/sys/modmenu/reports">[Reports]</a>
|
||||
<a href="/sys/modmenu/users">[Users]</a>
|
||||
<a href="/sys/modmenu/boards">[Boards]</a>
|
||||
</div>
|
||||
</Authorized>
|
||||
<NotAuthorized>
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
@page "/sys/reports"
|
||||
@page "/sys/modmenu/reports"
|
||||
@using ImageBoardServerApp.Data.Repository
|
||||
<AuthorizeView Roles="Admin,Mod">
|
||||
<Authorized>
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
@page "/sys/users"
|
||||
@page "/sys/modmenu/users"
|
||||
@using ImageBoardServerApp.Data.Repository
|
||||
<AuthorizeView Roles="Admin">
|
||||
<Authorized>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue