Implemented navbar showing elements based on permissions

This commit is contained in:
2025-10-17 18:32:22 +02:00
parent 724bb95809
commit 6f6ce058e2

View File

@@ -1,4 +1,5 @@
@using Microsoft.AspNetCore.Mvc.Localization @using Microsoft.AspNetCore.Mvc.Localization
@using System.Security.Claims
@inject IViewLocalizer T @inject IViewLocalizer T
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
@@ -32,23 +33,38 @@
<li class="nav-item"> <li class="nav-item">
<a class="nav-link text" asp-area="" asp-controller="Home" asp-action="Index">@T["Quick-Actions"]</a> <a class="nav-link text" asp-area="" asp-controller="Home" asp-action="Index">@T["Quick-Actions"]</a>
</li> </li>
@if (User.Identity.IsAuthenticated) @if (User.Identity?.IsAuthenticated ?? false)
{ {
<li class="nav-item"> @if (User.HasClaim(ClaimTypes.Role, "CanInventorize"))
<a class="nav-link text" asp-area="" asp-controller="Home" asp-action="Inventory">@T["Inventory"]</a> {
</li> <li class="nav-item">
<li class="nav-item"> <a class="nav-link text" asp-area="" asp-controller="Home" asp-action="Inventory">@T["Inventory"]</a>
<a class="nav-link text" asp-area="" asp-controller="Home" asp-action="Assets">@T["Assets"]</a> </li>
</li> }
<li class="nav-item"> @if (User.HasClaim(ClaimTypes.Role, "CanManageAssets"))
<a class="nav-link text" asp-area="" asp-controller="Home" asp-action="Locations">@T["Locations"]</a> {
</li> <li class="nav-item">
<li class="nav-item"> <a class="nav-link text" asp-area="" asp-controller="Home" asp-action="Assets">@T["Assets"]</a>
<a class="nav-link text" asp-area="" asp-controller="Home" asp-action="Users">@T["Users"]</a> </li>
</li> }
<li class="nav-item"> @if (User.HasClaim(ClaimTypes.Role, "CanManageLocations"))
<a class="nav-link text" asp-area="" asp-controller="Home" asp-action="Groups">@T["Groups"]</a> {
</li> <li class="nav-item">
<a class="nav-link text" asp-area="" asp-controller="Home" asp-action="Locations">@T["Locations"]</a>
</li>
}
@if (User.HasClaim(ClaimTypes.Role, "CanManageUsers"))
{
<li class="nav-item">
<a class="nav-link text" asp-area="" asp-controller="Home" asp-action="Users">@T["Users"]</a>
</li>
}
@if (User.HasClaim(ClaimTypes.Role, "CanManageGroups"))
{
<li class="nav-item">
<a class="nav-link text" asp-area="" asp-controller="Home" asp-action="Groups">@T["Groups"]</a>
</li>
}
} }
<li class="nav-item"> <li class="nav-item">
@if (User.Identity.IsAuthenticated) @if (User.Identity.IsAuthenticated)