Add initial Angular webclient application with authentication, route guards, and UI components
This commit is contained in:
61
webclient/src/app/components/navbar/navbar.html
Normal file
61
webclient/src/app/components/navbar/navbar.html
Normal file
@@ -0,0 +1,61 @@
|
||||
<nav class="navbar navbar-expand-lg navbar-light border-bottom">
|
||||
<div class="container">
|
||||
<a class="navbar-brand fw-bold" [routerLink]="'/'">
|
||||
<img ngSrc="/logo.png" alt="logo" height="32" width="32"/>
|
||||
Portail Bureau Service
|
||||
</a>
|
||||
|
||||
<div class="ms-auto">
|
||||
@if (getUser(); as user) {
|
||||
<div class="dropdown">
|
||||
<button
|
||||
class="btn btn-outline-secondary dropdown-toggle"
|
||||
type="button"
|
||||
id="userDropdown"
|
||||
data-bs-toggle="dropdown"
|
||||
aria-expanded="false">
|
||||
<i class="bi bi-person-circle me-2"></i>
|
||||
<span class="d-none d-sm-inline">{{ user.username }}</span>
|
||||
</button>
|
||||
<ul class="dropdown-menu dropdown-menu-end" aria-labelledby="userDropdown">
|
||||
<li>
|
||||
<a class="dropdown-item" [routerLink]="'/profile'">
|
||||
<i class="bi bi-person"></i> Profile
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a class="dropdown-item" [routerLink]="'/moulinettes'">
|
||||
<i class="bi bi-person-lines-fill"></i> Liste des moulinettes
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@if (authService.hasRole('Administrator')) {
|
||||
<li>
|
||||
<a class="dropdown-item" [routerLink]="'/admin'">
|
||||
<i class="bi bi-shield-lock"></i> Administration
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a class="dropdown-item" [routerLink]="'/admin/rules'">
|
||||
<i class="bi bi-signpost-split"></i> Gestion des moulinettes
|
||||
</a>
|
||||
</li>
|
||||
}
|
||||
<li>
|
||||
<hr class="dropdown-divider">
|
||||
</li>
|
||||
<li>
|
||||
<a class="dropdown-item" (click)="logout()">
|
||||
<i class="bi bi-box-arrow-right"></i> Se déconnecter
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
} @else {
|
||||
<div class="btn-group gap-4">
|
||||
<button class="btn btn-outline-dark" [routerLink]="'/login'">Se connecter</button>
|
||||
</div>
|
||||
}
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
Reference in New Issue
Block a user