commit 486ad52cb23018ca12eb6d9243a3ddccdf072017
parent 3d58ec5a0704e20938a701b31e0340ac8bb37597
Author: William Lindholm <a22willi@student.his.se>
Date: Mon, 9 Oct 2023 11:08:32 +0200
Improved navbar to read navbarlinks from list of tuples. And show active page.
Diffstat:
1 file changed, 19 insertions(+), 12 deletions(-)
diff --git a/MVC-databaskonstruktion/Views/Shared/_Layout.cshtml b/MVC-databaskonstruktion/Views/Shared/_Layout.cshtml
@@ -1,4 +1,14 @@
-<!DOCTYPE html>
+@{
+ var navLinks = new List<(string DisplayName, string Controller, string Action)>
+ {
+ ("Home", "Home", "Index"),
+ ("Privacy", "Home", "Privacy"),
+ ("Agents", "Agents", "Index"),
+ ("Incidents", "Incident", "Index")
+ };
+}
+
+<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
@@ -10,24 +20,21 @@
</head>
<body>
<header>
- <nav class="navbar navbar-expand-sm navbar-toggleable-sm navbar-light bg-white border-bottom box-shadow mb-3">
+ <nav class="navbar navbar-expand-sm navbar-toggleable-sm navbar-dark bg-dark border-bottom box-shadow mb-3">
<div class="container-fluid">
- <a class="navbar-brand" asp-area="" asp-controller="Home" asp-action="Index">MVC_databaskonstruktion</a>
+ <a class="navbar-brand" asp-area="" asp-controller="Home" asp-action="Index">PUCKO-PORTAL</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target=".navbar-collapse" aria-controls="navbarSupportedContent"
aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="navbar-collapse collapse d-sm-inline-flex justify-content-between">
<ul class="navbar-nav flex-grow-1">
- <li class="nav-item">
- <a class="nav-link text-dark" asp-area="" asp-controller="Home" asp-action="Index">Home</a>
- </li>
- <li class="nav-item">
- <a class="nav-link text-dark" asp-area="" asp-controller="Home" asp-action="Privacy">Privacy</a>
- </li>
- <li class="nav-item">
- <a class="nav-link text-dark" asp-area="" asp-controller="Agents" asp-action="Index">Agents</a>
- </li>
+ @foreach (var link in navLinks)
+ {
+ <li class="nav-item">
+ <a class="nav-link @(ViewContext.RouteData.Values["Controller"].ToString() == link.Controller && ViewContext.RouteData.Values["Action"].ToString() == link.Action ? "active" : "")" asp-area="" asp-controller="@link.Controller" asp-action="@link.Action">@link.DisplayName</a>
+ </li>
+ }
</ul>
</div>
</div>