diff options
Diffstat (limited to 'src/main/resources/templates/navbar.html')
-rw-r--r-- | src/main/resources/templates/navbar.html | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/src/main/resources/templates/navbar.html b/src/main/resources/templates/navbar.html new file mode 100644 index 0000000..0aa60e0 --- /dev/null +++ b/src/main/resources/templates/navbar.html @@ -0,0 +1,77 @@ +<nav th:fragment="navigation" class="navbar navbar-expand-lg fixed-top bg-body-tertiary border-bottom"> + <div class="container"> + <a class="navbar-brand" href="/">builddb</a> + <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation"> + <span class="navbar-toggler-icon"></span> + </button> + <div class="collapse navbar-collapse" id="navbarSupportedContent"> + <ul class="navbar-nav me-auto mb-2 mb-lg-0"> + <li class="nav-item"> + <a class="nav-link text-dark" href="/">Home</a> + </li> + <li class="nav-item"> + <a class="nav-link text-dark" href="/contact">Contact</a> + </li> + <li class="nav-item"> + <a class="nav-link text-dark" href="/user">User</a> + </li> + <li class="nav-item"> + <a class="nav-link text-dark" sec:authorize="hasRole('client')" href="/client">Client</a> + </li> + <li class="nav-item"> + <a class="nav-link text-dark" sec:authorize="hasRole('admin')" href="/admin">Admin</a> + </li> + <li class="nav-item"> + <a class="nav-link text-dark" sec:authorize="hasRole('admin')" href="/actuatorDashboard">Actuator</a> + </li> + </ul> + + <ul class="navbar-nav me-3" sec:authorize="hasRole('admin')"> + <li class="nav-item dropdown"> + <a class="nav-link dropdown-toggle text-dark" href="#" role="button" data-bs-toggle="dropdown" aria-expanded="false"> + Admin + </a> + <ul class="dropdown-menu"> + <li><a class="dropdown-item" href="/profile">Profile</a></li> + <li><a class="dropdown-item" href="/">Home</a></li> + </ul> + </li> + </ul> + + <ul class="navbar-nav me-3" sec:authorize="hasRole('client')"> + <li class="nav-item dropdown"> + <a class="nav-link dropdown-toggle text-dark" href="#" role="button" data-bs-toggle="dropdown" aria-expanded="false"> + Client + </a> + <ul class="dropdown-menu"> + <li><a class="dropdown-item" href="/profile">Profile</a></li> + <li><a class="dropdown-item" href="/">Home</a></li> + </ul> + </li> + </ul> + + <form sec:authorize="isAuthenticated()" method="post" action="/logout"> + <input type="hidden" th:name="${_csrf.parameterName}" + th:value="${_csrf.token}" /> + + <button type="submit" class="btn btn-danger"> + <i class="fa-solid fa-right-from-bracket"></i> + </button> + </form> + + <ul class="navbar-nav" sec:authorize="!isAuthenticated()"> + <li class="nav-item"> + <a href="/register" class="btn btn-outline-primary me-2"> + <i class="fa-regular fa-id-card"></i> + </a> + </li> + <li class="nav-item"> + <a href="/login" class="btn btn-primary"> + <i class="fa-solid fa-right-to-bracket"></i> + </a> + </li> + </ul> + + </div> + </div> +</nav>
\ No newline at end of file |