aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/resources/templates/navbar.html
blob: 0aa60e0cb6c50fdb7c71632521c72158110369a3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
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>