All checks were successful
CI - Build Tonehaus Docker image / tonehaus-ci-build (push) Successful in 1m57s
54 lines
3.0 KiB
Twig
54 lines
3.0 KiB
Twig
<nav class="navbar navbar-expand-lg bg-body-tertiary" data-auth-header>
|
|
<div class="container">
|
|
<a class="navbar-brand fw-bold ps-2" href="{{ path('album_search') }}">tonehaus</a>
|
|
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navMain" aria-controls="navMain" aria-expanded="false" aria-label="Toggle navigation">
|
|
<span class="navbar-toggler-icon"></span>
|
|
</button>
|
|
<div class="collapse navbar-collapse" id="navMain">
|
|
<ul class="navbar-nav me-auto mb-2 mb-lg-0">
|
|
{% if app.user %}
|
|
<li class="nav-item"><a class="nav-link" href="{{ path('album_new') }}">Create Album</a></li>
|
|
{% endif %}
|
|
</ul>
|
|
<div class="d-flex align-items-center gap-3">
|
|
{% if app.user %}
|
|
<div class="dropdown">
|
|
{% set avatar = app.user.profileImagePath %}
|
|
<button class="btn btn-outline-secondary dropdown-toggle d-flex align-items-center gap-2" type="button" data-bs-toggle="dropdown" aria-expanded="false">
|
|
{% if avatar %}
|
|
<img src="{{ avatar }}" alt="Profile picture" class="rounded-circle border" width="28" height="28" style="object-fit: cover;">
|
|
{% else %}
|
|
<span class="rounded-circle bg-secondary text-white d-inline-flex align-items-center justify-content-center" style="width:28px;height:28px;">
|
|
{{ (app.user.displayName ?? app.user.userIdentifier)|slice(0,1)|upper }}
|
|
</span>
|
|
{% endif %}
|
|
<span class="text-truncate" style="max-width: 180px;">{{ app.user.displayName ?? app.user.userIdentifier }}</span>
|
|
</button>
|
|
<ul class="dropdown-menu dropdown-menu-end">
|
|
{% if is_granted('ROLE_MODERATOR') %}
|
|
<li><h6 class="dropdown-header">Site</h6></li>
|
|
<li><a class="dropdown-item" href="{{ path('admin_dashboard') }}">Dashboard</a></li>
|
|
<li><a class="dropdown-item" href="{{ path('admin_users') }}">User Management</a></li>
|
|
{% if is_granted('ROLE_ADMIN') %}
|
|
<li><a class="dropdown-item" href="{{ path('admin_settings') }}">Settings</a></li>
|
|
{% endif %}
|
|
<li><hr class="dropdown-divider"></li>
|
|
{% endif %}
|
|
<li><h6 class="dropdown-header">User</h6></li>
|
|
<li><a class="dropdown-item" href="{{ path('account_dashboard') }}">Dashboard</a></li>
|
|
<li><a class="dropdown-item" href="{{ path('account_profile') }}">Profile</a></li>
|
|
<li><a class="dropdown-item" href="{{ path('account_settings') }}">Settings</a></li>
|
|
<li><hr class="dropdown-divider"></li>
|
|
<li><a class="dropdown-item" href="{{ path('app_logout') }}">Logout</a></li>
|
|
</ul>
|
|
</div>
|
|
{% else %}
|
|
<button class="btn btn-success" type="button" data-open-auth="login">Login / Sign up</button>
|
|
{% endif %}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</nav>
|
|
|
|
|