ldc-supportweb/resources/views/layout/nav.blade.php
Jérémy Munsch 9c1b540703
FIX CSP issues
- bumped crud-policies to 0.4.2
- compile vue using runtime and production mode
2022-06-09 13:37:13 +02:00

125 lines
6.7 KiB
PHP

<nav class="navbar navbar-expand-md navbar-dark bg-dark">
<div class="container">
<a class="navbar-brand" href="{{ url('/') }}">
@if(auth()->user()->site ?? false)
{{ __('Site') }}&nbsp;:&nbsp;<b class="text-primary">{{ ucwords(auth()->user()->site->name) }}</b>
@else
{{ config('app.name', 'Laravel') }}
@endif
</a>
@auth
<div class="collapse navbar-collapse" id="navbarSupportedContent">
<ul class="navbar-nav me-auto">
@can('viewAny', App\Models\Ticket::class)
<li class="nav-item">
<a class="nav-link @if(strpos(request()->route()->getName(), 'ticket') === 0)active @endif" href="{{ route('ticket.index') }}">{{ __('models.classes.tickets') }}</a>
</li>
@endcan
@if(
auth()->user()->can('viewAny', \App\Models\Brand::class) or
auth()->user()->can('viewAny', \App\Models\Site::class) or
auth()->user()->can('viewAny', \App\Models\Project::class)
)
<li class="nav-item dropdown user-dropdown">
<a id="navbarDropdown" class="nav-link dropdown-toggle" href="#" role="button" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
{{ __('Gestion') }}&nbsp;<span class="caret"></span>
</a>
<div class="dropdown-menu dropdown-menu-right" aria-labelledby="navbarDropdown">
@can('viewAny', App\Models\Brand::class)
<a class="dropdown-item @if(strpos(request()->route()->getName(), 'brands') === 0)active @endif" href="{{ route('brands.index') }}">{{ __('models.classes.brands') }}</a>
@endcan
@can('viewAny', App\Models\Site::class)
<a class="dropdown-item @if(strpos(request()->route()->getName(), 'sites') === 0)active @endif" href="{{ route('sites.index') }}">{{ __('models.classes.sites') }}</a>
@endcan
@can('viewAny', App\Models\Project::class)
<a class="dropdown-item @if(strpos(request()->route()->getName(), 'projects') === 0)active @endif" href="{{ route('projects.index') }}">{{ __('models.classes.projects') }}</a>
@endcan
</div>
</li>
@endif
@can('viewAny', App\Models\User::class)
<li class="nav-item">
<a class="nav-link @if(strpos(request()->route()->getName(), 'users') === 0)active @endif" href="{{ route('users.index') }}">{{ __('models.classes.users') }}</a>
</li>
@endcan
@if(!Auth::user()->isAdmin())
@can('viewAny', App\Models\Credit\Account::class)
<li class="nav-item">
<a class="nav-link @if(strpos(request()->route()->getName(), 'users') === 0)active @endif" href="{{ route('credit_accounts.index') }}">{{ __('models.classes.accounts') }}</a>
</li>
@endcan
@endif
@if(Auth::user()->isAdmin())
<li class="nav-item">
<a class="nav-link @if(strpos(request()->route()->getName(), 'schedule') === 0)active @endif" href="{{ route('schedule.index') }}">{{ __('Planning') }}</a>
</li>
@endif
<li class="nav-item">
<a class="nav-link @if(strpos(request()->route()->getName(), 'macroplanning') === 0)active @endif" href="{{ route('macroplanning.show') }}">{{ __('Plan de charge') }}</a>
</li>
</ul>
<ul class="navbar-nav me-auto">
<li class="nav-item">
<span class="nav-link text-info fw-bold">{{ __('models.classes.tickets') }}</span>
</li>
<li class="nav-item">
<span class="nav-link text-light">{{ __('Nouveau') }}&nbsp;:&nbsp;<span class="text-info">{{ $ticketsNew ?? 0 }}</span></span>
</li>
<li class="nav-item">
<span class="nav-link text-light">{{ __('En cours') }}&nbsp;:&nbsp;<span class="text-info">{{ $ticketsInProgress ?? 0 }}</span></span>
</li>
<li class="nav-item">
@include('modules.loadLevel')
</li>
</ul>
</div>
@endauth
<!-- Left Side Of Navbar -->
<ul class="navbar-nav me-auto">
@if(Auth::check() and !Auth::user()->role->equals(Role::client()))
<li class="{{ Auth::user()->role->equals(Role::admin()) ? 'text-primary' : 'text-success'}}">
{{ Auth::user()->role->label }}
</li>
@endif
</ul>
<!-- Right Side Of Navbar -->
<ul class="navbar-nav ms-auto me-2">
<!-- Authentication Links -->
@auth
<li class="nav-item dropdown user-dropdown">
<a id="navbarDropdown" class="nav-link dropdown-toggle" href="#" role="button" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
{{ __('Bonjour') }}&nbsp;{{ Auth::user()->name }} <span class="caret"></span>
</a>
<div class="dropdown-menu dropdown-menu-right" aria-labelledby="navbarDropdown">
@if (Auth::user()->role->value === Role::developper()->value)
<a class="dropdown-item" href="{{ route('users.stats') }}">
{{ __('Statistiques') }}
</a>
@endif
<a class="dropdown-item" href="{{ route('users.passwordReset') }}">
{{ __('Identifiants') }}
</a>
<form id="logout-form" class="dropdown-item" action="{{route('logout')}}" method="POST" class="d-none">
@csrf
<button class="btn btn-link p-0 text-decoration-none text-muted text-capitalize" type="submit">{{ __('Déconnexion') }}</button>
</form>
</div>
</li>
@else
<li class="nav-item">
<a class="nav-link" href="{{route('login')}}">{{ __('Connexion') }}</a>
</li>
@endguest
</ul>
<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>
</nav>