{{-- Page header --}}

Permission Matrix

Train and manage entity permissions

{{-- Flash messages --}} @if (session()->has('message'))
{{ session('message') }}
@endif @if (session()->has('error'))
{{ session('error') }}
@endif {{-- Stats cards --}}
{{ $stats['total_permissions'] }}
Total Permissions
{{ $stats['allowed'] }}
Allowed
{{ $stats['denied'] }}
Denied
{{ $stats['locked'] }}
Locked
{{ $stats['pending_requests'] }}
Pending
{{-- Filters --}}
{{-- Pending Requests --}} @if($pendingRequests->count() > 0)

Pending Requests ({{ $pendingRequests->total() }})

@if(count($selectedRequests) > 0)
@endif
@foreach($pendingRequests as $request) @endforeach
pluck('id')->toArray() === $selectedRequests) checked @endif> Entity Action Route Time Actions
{{ $request->entity?->name ?? 'Unknown' }}
{{ $request->entity?->path }}
{{ $request->action }} @if($request->scope) ({{ $request->scope }}) @endif {{ $request->method }} {{ Str::limit($request->route, 40) }} {{ $request->created_at->diffForHumans() }}
{{ $pendingRequests->links() }}
@endif {{-- Trained Permissions --}}

Trained Permissions

@if($permissions->isEmpty())

No permissions trained yet

Permissions will appear here as you train them through the matrix.

@else
@foreach($permissions as $permission) @endforeach
Entity Permission Key Scope Status Source Actions
{{ $permission->entity?->name ?? 'Unknown' }}
{{ $permission->entity?->path }}
{{ $permission->key }} {{ $permission->scope ?? 'global' }}
@if($permission->allowed) Allowed @else Denied @endif @if($permission->locked) Locked @endif
{{ $permission->source }} @if($permission->setByEntity) by {{ $permission->setByEntity->code }} @endif
@if($permission->locked) @endif @if(!$permission->locked) @endif
{{ $permissions->links() }}
@endif
{{-- Training Modal --}} @if($showTrainModal) @endif