87 lines
5.4 KiB
PHP
87 lines
5.4 KiB
PHP
<nav class="navbar navbar-expand-xxl position-fixed fixed-top bg-body-tertiary shadow-sm" id="top-navbar">
|
|
<div class="container">
|
|
<a class="navbar-brand" data-bs-toggle="tooltip" data-bs-placement="bottom" href="{{ route('fo.home.show') }}"
|
|
title="{{ __('Accéder au front du projet') }}" target="_blank">
|
|
{{ config('app.name', 'Laravel') }}
|
|
</a>
|
|
@auth
|
|
<button class="navbar-toggler collapsed" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent" type="button"
|
|
aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="{{ __('Toggle navigation') }}">
|
|
<span class="navbar-toggler-icon"></span>
|
|
<i class="navbar-toggler-icon-close fa-solid fa-xmark fa-xl px-1"></i>
|
|
</button>
|
|
@endauth
|
|
|
|
<div class="navbar-collapse collapse" id="navbarSupportedContent">
|
|
<!-- Left Side Of Navbar -->
|
|
@include('bo.layouts.nav-list')
|
|
|
|
<!-- Right Side Of Navbar -->
|
|
<ul class="navbar-nav ms-auto">
|
|
<!-- Bootstrap themes -->
|
|
<li class="nav-item dropdown @auth border-lg-end @endauth">
|
|
<button class="btn nav-link dropdown-toggle d-flex align-items-center h-100 flex-row border-0 pe-3"
|
|
data-bs-toggle="dropdown" type="button" aria-expanded="false">
|
|
<i class="d-none d-lg-block fa-solid fa-paint-roller"></i>
|
|
<span class="d-lg-none">{{ __('Thème') }}</span>
|
|
</button>
|
|
<form class="dropdown-menu dropdown-menu-end text-center" id="theme-selector" action="{{ route('bo.theme.set') }}"
|
|
method="POST">
|
|
@push('scripts')
|
|
<script @if (!empty($nonce)) nonce="{{ $nonce }}" @endif>
|
|
document.addEventListener('DOMContentLoaded', function() {
|
|
const themeSelector = document.getElementById('theme-selector');
|
|
if (themeSelector) {
|
|
themeSelector.addEventListener('change', function() {
|
|
this.submit();
|
|
});
|
|
}
|
|
});
|
|
</script>
|
|
@endpush
|
|
@csrf
|
|
@foreach (\App\Enums\Theme\BootstrapThemeEnum::toArray() as $key => $bootstrapTheme)
|
|
<input class="d-none form-check-input" id="theme{{ $key }}" name="theme" type="radio"
|
|
value="{{ $bootstrapTheme->value }}">
|
|
<label class="dropdown-item w-100 text-decoration-none @if (
|
|
!is_null(Cache::get('theme'))
|
|
? $bootstrapTheme->value === intval(Cache::get('theme'))
|
|
: $bootstrapTheme->value === \App\Enums\Theme\BootstrapThemeEnum::light->value) active @endif p-2"
|
|
for="theme{{ $key }}" role="button">
|
|
{{ Str::of($bootstrapTheme->label)->ucFirst() }}
|
|
</label>
|
|
@endforeach
|
|
</form>
|
|
</li>
|
|
<!-- Authentication Links -->
|
|
@auth
|
|
<li class="nav-item dropdown">
|
|
<button class="btn nav-link dropdown-toggle d-flex align-items-center h-100 ps-lg-3 flex-row border-0"
|
|
id="navbarDropdown" data-bs-toggle="dropdown" type="button">
|
|
<div class="d-flex flex-column align-items-start align-items-lg-end lh-1">
|
|
<span
|
|
class="fw-bold">{{ auth('backend')->user()->first_name }} {{ auth('backend')->user()->last_name }}</span>
|
|
<small class="text-secondary-body">{{ Str::of(auth('backend')->user()->role->label())->ucFirst() }}</small>
|
|
</div>
|
|
</button>
|
|
<div class="dropdown-menu dropdown-menu-end m-0 text-center" aria-labelledby="navbarDropdown">
|
|
<a class="dropdown-item w-100 text-decoration-none p-2" data-bs-toggle="tooltip" data-bs-placement="left"
|
|
href="{{ route('bo.users.edit', auth('backend')->user()->getKey()) }}"
|
|
title="{{ __('Accéder à son profile') }}">
|
|
{{ __('Profile') }}
|
|
</a>
|
|
<hr class="dropdown-divider m-0">
|
|
<form class="m-0 text-center" id="logout-form" action="{{ route('bo.logout') }}" method="POST">
|
|
@csrf
|
|
<button class="dropdown-item w-100 text-decoration-none p-2" data-bs-toggle="tooltip" data-bs-placement="left"
|
|
type="submit" title="{{ __('Se déconnecter du back-office') }}">
|
|
{{ __('Déconnexion') }}
|
|
</button>
|
|
</form>
|
|
</div>
|
|
</li>
|
|
@endauth
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</nav>
|