@extends('layouts.app') @section('title', 'Roles & Permissions - NGBVD') @section('content') @php $roleCount = isset($roles) ? count($roles) : 0; $totalPermissions = 0; if (isset($permissionRegistry) && method_exists($permissionRegistry, 'totalPermissions')) { $totalPermissions = $permissionRegistry->totalPermissions(); } elseif (isset($permissionRegistry) && method_exists($permissionRegistry, 'allPermissionKeys')) { $totalPermissions = count($permissionRegistry->allPermissionKeys()); } elseif (function_exists('config')) { $configured = config('ngbvd_permissions.permissions', []); $totalPermissions = is_array($configured) ? count($configured) : 0; } @endphp

User Roles & Permissions

Manage role-based access by module, action and data responsibility.

Add Role
{{ $roleCount }}Configured roles
{{ $totalPermissions }}Available permissions
Scope BasedNavigation, routes and records

Role Workspace

Select a role tile to configure permissions, or edit the role details.

@forelse($roles as $role) @php $roleRef = $role->uuid ?? $role->id; $assigned = []; $coverage = ['assigned' => 0, 'total' => $totalPermissions, 'percentage' => 0]; if (isset($permissionRegistry) && method_exists($permissionRegistry, 'forRole')) { $assigned = $permissionRegistry->forRole($role->id) ?: []; } if (isset($permissionRegistry) && method_exists($permissionRegistry, 'roleCoverage')) { $coverage = $permissionRegistry->roleCoverage($role->id) ?: $coverage; } else { $coverage['assigned'] = is_array($assigned) ? count($assigned) : 0; $coverage['percentage'] = $coverage['total'] > 0 ? round(($coverage['assigned'] / $coverage['total']) * 100) : 0; } $percentage = (int)($coverage['percentage'] ?? 0); @endphp
{{ $percentage }}%

{{ $role->name }}

{{ $coverage['assigned'] ?? 0 }} of {{ $coverage['total'] ?? $totalPermissions }} permission(s) assigned.

@empty

No roles configured

Create the first role to begin assigning permissions.

Create Role
@endforelse
@endsection