@extends('layouts.app') @section('title', 'Hak Akses Role') @section('content')
{{-- Header --}}

Hak Akses Role

Atur permission/fitur apa saja yang bisa diakses oleh setiap role pengguna.

@if (session('success'))
{{ session('success') }}
@endif
@csrf
@foreach ($permissions as $group => $groupPermissions) @php $groupLabels = [ 'akses' => ['Akses Umum', 'fa-door-open', 'blue'], 'pelanggaran' => ['Pelanggaran', 'fa-triangle-exclamation', 'red'], 'data' => ['Data Master', 'fa-database', 'violet'], 'presensi' => ['Presensi', 'fa-clipboard-check', 'emerald'], 'wajah' => ['Face ID', 'fa-fingerprint', 'indigo'], 'master-data' => ['Master Data', 'fa-gear', 'slate'], 'administrasi' => ['Administrasi', 'fa-shield-halved', 'amber'], ]; $gl = $groupLabels[$group] ?? [ucfirst($group), 'fa-circle', 'gray']; @endphp
{{-- Group header --}}
{{ $gl[0] }}
{{-- Table --}}
@foreach ($roles as $role) @php $roleLabels = [ 'admin' => ['Admin', 'blue'], 'bk' => ['BK', 'indigo'], 'wali_kelas' => ['Wali Kelas', 'emerald'], 'staff' => ['Staff', 'amber'], 'kepala_sekolah' => ['Kepala Sekolah', 'amber'], 'waka_kesiswaan' => ['Waka Kesiswaan', 'rose'], 'ketua_tim' => ['Ketua Tim', 'teal'], 'other' => ['Guest', 'gray'], ]; $rl = $roleLabels[$role] ?? [ucfirst($role), 'gray']; @endphp @endforeach @foreach ($groupPermissions as $perm) @php $allChecked = true; foreach ($roles as $role) { if ($role !== 'admin' && !in_array($perm->id, $rolePermissions[$role] ?? [])) { $allChecked = false; break; } } @endphp @foreach ($roles as $role) @php $checked = in_array($perm->id, $rolePermissions[$role] ?? []); $disabled = ($role === 'admin'); @endphp @endforeach @endforeach
Permission
@if($role === 'admin') @else @endif {{ $rl[0] }}
{{ $perm->label }}
{{ $perm->key }}
@if($disabled)
@else @endif
@endforeach
{{-- Bottom bar --}}
Role Admin selalu memiliki semua hak akses (tidak bisa diubah).
@endsection