Lieb-Website/Lieb/Shared/NavMenu.razor

102 lines
4 KiB
Text

@using Lieb.Data
@inject NavigationManager NavigationManager;
<div class="top-row ps-3 navbar navbar-dark">
<div class="container-fluid">
<a class="navbar-brand" href=""><img src="GuildIcon512.svg" alt="guild icon" style="width:30px;height:30px;"> [LIEB]</a>
<button title="Navigation menu" class="navbar-toggler" @onclick="ToggleNavMenu">
<span class="navbar-toggler-icon"></span>
</button>
</div>
</div>
<div class="@NavMenuCssClass" @onclick="ToggleNavMenu">
<nav class="flex-column">
<div class="nav-item px-3">
<NavLink class="nav-link" href="" Match="NavLinkMatch.All">
<span class="oi oi-home" aria-hidden="true"></span> Home
</NavLink>
</div>
<div class="nav-item px-3">
<NavLink class="nav-link" href="raidoverview/Raid" Match="NavLinkMatch.All">
<span class="oi oi-list" aria-hidden="true"></span> Raid Overview
</NavLink>
</div>
<div class="nav-item px-3">
<NavLink class="nav-link" href="raidoverview/Strike" Match="NavLinkMatch.All">
<span class="oi oi-list" aria-hidden="true"></span> Strike Overview
</NavLink>
</div>
<div class="nav-item px-3">
<NavLink class="nav-link" href="raidoverview" Match="NavLinkMatch.All">
<span class="oi oi-list" aria-hidden="true"></span> All Events
</NavLink>
</div>
<AuthorizeView Policy="@Constants.Roles.RaidLead.Name">
<Authorized>
<div class="nav-item px-3">
<NavLink class="nav-link" href="raidtemplateoverview">
<span class="oi oi-document" aria-hidden="true"></span> Event Templates
</NavLink>
</div>
</Authorized>
</AuthorizeView>
<AuthorizeView>
<Authorized>
<div class="nav-item px-3">
<NavLink class="nav-link" href="raidlogs">
<span class="oi oi-pie-chart" aria-hidden="true"></span> Logs
</NavLink>
</div>
</Authorized>
</AuthorizeView>
<AuthorizeView>
<Authorized>
<div class="nav-item px-3">
<NavLink class="nav-link" href="accountedit">
<span class="oi oi-cog" aria-hidden="true"></span> Account
</NavLink>
</div>
</Authorized>
</AuthorizeView>
<AuthorizeView Policy="@Constants.Roles.Admin.Name">
<Authorized>
<div class="nav-item px-3">
<NavLink class="nav-link" href="useroverview">
<span class="oi oi-folder" aria-hidden="true"></span> User Overview
</NavLink>
</div>
</Authorized>
</AuthorizeView>
<div class="nav-item px-3">
<NavLink class="nav-link" href="buildoverview">
<span class="oi oi-folder" aria-hidden="true"></span> Build Overview
</NavLink>
</div>
<AuthorizeView Policy="@Constants.Roles.Admin.Name">
<Authorized>
<div class="nav-item px-3">
<NavLink class="nav-link" href="discordoverview">
<span class="oi oi-folder" aria-hidden="true"></span> Discord Overview
</NavLink>
</div>
</Authorized>
</AuthorizeView>
<div class="nav-item px-3">
<NavLink class="nav-link" href="legal">
<span class="oi oi-folder" aria-hidden="true"></span> Legal
</NavLink>
</div>
</nav>
</div>
@code {
private bool collapseNavMenu = true;
private string? NavMenuCssClass => collapseNavMenu ? "collapse" : null;
private void ToggleNavMenu()
{
collapseNavMenu = !collapseNavMenu;
}
}