Dashboards
@php // Ensure $menus is defined and is an object $menus = isset($menus) ? json_decode(json_encode($menus)) : new stdClass; // Define the order of sections $sectionOrder = ['main', 'otorisator','laporan', 'master', 'system']; $sectionTitles = [ 'main' => 'Apps', 'otorisator' => 'Otorisator', 'laporan' => 'Laporan', 'master' => 'Master Data', 'system' => 'Systems' ]; @endphp @foreach($sectionOrder as $section) @if(!empty($menus->$section)) @php $hasVisibleItems = false; foreach($menus->$section as $menu) { if(auth()->user()->hasRole($menu->roles)) { $hasVisibleItems = true; break; } } @endphp @if($hasVisibleItems)
{{ $sectionTitles[$section] }}
@foreach($menus->$section as $menu) @if(auth()->user()->hasRole($menu->roles)) @if(isset($menu->sub))
@php $title = $menu->title; if(strlen($title) > 30) { $words = explode(' ', $title); $lines = []; $currentLine = ''; foreach($words as $word) { if(strlen($currentLine . ' ' . $word) <= 30 || empty($currentLine)) { $currentLine = empty($currentLine) ? $word : $currentLine . ' ' . $word; } else { $lines[] = $currentLine; $currentLine = $word; } } if(!empty($currentLine)) { $lines[] = $currentLine; } echo implode('
', $lines); } else { echo $title; } @endphp
@if(is_array($menu->sub))
@foreach($menu->sub as $sub) @if(auth()->user()->hasRole($sub->roles))
{{ $sub->title }}
@endif @endforeach
@endif
@else
@php $title = $menu->title; if(strlen($title) > 30) { $words = explode(' ', $title); $lines = []; $currentLine = ''; foreach($words as $word) { if(strlen($currentLine . ' ' . $word) <= 30 || empty($currentLine)) { $currentLine = empty($currentLine) ? $word : $currentLine . ' ' . $word; } else { $lines[] = $currentLine; $currentLine = $word; } } if(!empty($currentLine)) { $lines[] = $currentLine; } echo implode('
', $lines); } else { echo $title; } @endphp
@endif @endif @endforeach @endif @endif @endforeach