Files
D1041231009-WebGIS-PovertyMap/resources/views/partials/sidebar.blade.php
T
2026-06-10 18:16:46 +07:00

141 lines
5.1 KiB
PHP

@php
$user = auth()->user();
$roleName = $user?->getRoleNames()->first() ?? 'user';
$pendingTransferCount = $pendingTransferCount ?? 0;
$navItems = [
[
'label' => 'Peta Interaktif',
'short' => 'Peta',
'href' => url('/map'),
'icon' => 'fa-map',
'active' => request()->is('map'),
],
[
'label' => 'Data Tabular',
'short' => 'Data',
'href' => url('/data'),
'icon' => 'fa-table-list',
'active' => request()->is('data'),
],
[
'label' => 'Dashboard',
'short' => 'Dashboard',
'href' => url('/dashboard'),
'icon' => 'fa-chart-bar',
'active' => request()->is('dashboard'),
],
[
'label' => 'Transfer',
'short' => 'Transfer',
'href' => url('/permohonan'),
'icon' => 'fa-right-left',
'active' => request()->is('permohonan'),
'badge' => $pendingTransferCount,
],
];
$adminItems = [
[
'label' => 'Admin',
'href' => url('/admin/users'),
'icon' => 'fa-users-gear',
'active' => request()->is('admin/users'),
],
[
'label' => 'Log',
'href' => url('/admin/logs'),
'icon' => 'fa-clock-rotate-left',
'active' => request()->is('admin/logs'),
],
[
'label' => 'Pengaturan',
'href' => url('/admin/settings'),
'icon' => 'fa-sliders',
'active' => request()->is('admin/settings'),
],
];
@endphp
<input id="app-sidebar-toggle" type="checkbox" class="app-sidebar-toggle" autocomplete="off">
<header class="app-mobile-bar">
<label for="app-sidebar-toggle" class="btn btn-ghost btn-square app-sidebar-open" aria-label="Buka navigasi">
<i class="fa-solid fa-bars"></i>
</label>
<a href="{{ url('/') }}" class="app-mobile-brand">
<i class="fa-solid fa-house-chimney-crack"></i>
<span>WebGIS</span>
</a>
<div class="avatar placeholder">
<div class="bg-primary text-primary-content rounded-full w-8">
<span class="text-xs font-bold">{{ substr($user->name, 0, 1) }}</span>
</div>
</div>
</header>
<label for="app-sidebar-toggle" class="app-sidebar-backdrop" aria-label="Tutup navigasi"></label>
<aside class="app-sidebar" aria-label="Navigasi utama">
<div class="app-sidebar-header">
<a href="{{ url('/') }}" class="app-sidebar-brand">
<span class="app-brand-icon"><i class="fa-solid fa-house-chimney-crack"></i></span>
<span class="app-brand-copy">
<span class="app-brand-title">WebGIS</span>
<span class="app-brand-subtitle">Pemetaan Kemiskinan</span>
</span>
</a>
<label for="app-sidebar-toggle" class="btn btn-ghost btn-square app-sidebar-close" aria-label="Tutup navigasi">
<i class="fa-solid fa-xmark"></i>
</label>
</div>
<nav class="app-sidebar-nav">
<div class="app-nav-section">
<div class="app-nav-section-title">Menu</div>
@foreach($navItems as $item)
<a href="{{ $item['href'] }}" class="app-nav-link {{ $item['active'] ? 'is-active' : '' }}">
<i class="fa-solid {{ $item['icon'] }}"></i>
<span>{{ $item['label'] }}</span>
@if(($item['badge'] ?? 0) > 0)
<span class="badge badge-error badge-xs transfer-pending-badge app-nav-badge">{{ $item['badge'] }}</span>
@endif
</a>
@endforeach
</div>
@if($user->hasRole('administrator'))
<div class="app-nav-section">
<div class="app-nav-section-title">Administrasi</div>
@foreach($adminItems as $item)
<a href="{{ $item['href'] }}" class="app-nav-link {{ $item['active'] ? 'is-active' : '' }}">
<i class="fa-solid {{ $item['icon'] }}"></i>
<span>{{ $item['label'] }}</span>
</a>
@endforeach
</div>
@endif
</nav>
<div class="app-sidebar-footer">
<div class="app-user-card">
<div class="avatar placeholder">
<div class="bg-primary text-primary-content rounded-full w-9">
<span class="text-xs font-bold">{{ substr($user->name, 0, 1) }}</span>
</div>
</div>
<div class="app-user-copy">
<div class="app-user-name">{{ $user->name }}</div>
<div class="app-user-role">{{ str_replace('_', ' ', $roleName) }}</div>
</div>
</div>
<form method="POST" action="{{ route('logout') }}">
@csrf
<button type="submit" class="app-logout-button">
<i class="fa-solid fa-right-from-bracket"></i>
<span>Keluar</span>
</button>
</form>
</div>
</aside>