@extends('layouts.app') @section('mobile-title', 'Roles') @section('mobile-subtitle', 'Permissions matrix') @section('mobile-back', route('users.index')) @section('content') @php $roles = [ 'admin' => [ 'label' => 'Admin', 'icon' => 'verified_user', 'summary' => 'Full system control across users, projects, documents, reports, compliance, exports, and settings.', 'tag' => 'System', ], 'supervisor' => [ 'label' => 'Site Manager', 'icon' => 'engineering', 'summary' => 'Can view every folder and add documents, with editing restricted to folders they own or are authorized to manage.', 'tag' => 'System', ], 'technician' => [ 'label' => 'Technician', 'icon' => 'construction', 'summary' => 'Field reporting and document upload access for assigned work and folders.', 'tag' => 'System', ], ]; $permissions = [ 'Document Centre' => [ ['Manage all folders', ['admin' => true, 'supervisor' => false, 'technician' => false]], ['Create top-level folders', ['admin' => true, 'supervisor' => true, 'technician' => false]], ['Create and edit managed subfolders', ['admin' => true, 'supervisor' => true, 'technician' => false]], ['Create documents', ['admin' => true, 'supervisor' => true, 'technician' => true]], ['Edit documents in managed folders', ['admin' => true, 'supervisor' => true, 'technician' => false]], ['View all folders', ['admin' => true, 'supervisor' => true, 'technician' => false]], ['View assigned folders', ['admin' => true, 'supervisor' => true, 'technician' => true]], ['Upload documents', ['admin' => true, 'supervisor' => true, 'technician' => true]], ['Approve or reject documents', ['admin' => true, 'supervisor' => true, 'technician' => false]], ['External sharing', ['admin' => true, 'supervisor' => true, 'technician' => false]], ], 'Project Management' => [ ['Create and edit projects', ['admin' => true, 'supervisor' => false, 'technician' => false]], ['View assigned projects', ['admin' => true, 'supervisor' => true, 'technician' => true]], ['Archive projects', ['admin' => true, 'supervisor' => false, 'technician' => false]], ], 'Reports' => [ ['Create field reports', ['admin' => true, 'supervisor' => false, 'technician' => true]], ['Review submitted reports', ['admin' => true, 'supervisor' => true, 'technician' => false]], ['Bulk archive reports', ['admin' => true, 'supervisor' => false, 'technician' => false]], ['Export report data', ['admin' => true, 'supervisor' => false, 'technician' => false]], ], 'Administration' => [ ['Manage team members', ['admin' => true, 'supervisor' => false, 'technician' => false]], ['Audit logs', ['admin' => true, 'supervisor' => false, 'technician' => false]], ['Compliance dashboard', ['admin' => true, 'supervisor' => false, 'technician' => false]], ['Application settings', ['admin' => true, 'supervisor' => false, 'technician' => false]], ], ]; @endphp
Manage access levels and functional permissions across operations.
This matrix reflects enforced route policies, project assignments, and document folder permissions.
| Permission | @foreach ($roles as $role){{ $role['label'] }} | @endforeach
|---|---|
| {{ $label }} | @foreach (array_keys($roles) as $roleKey){{ $grants[$roleKey] ? 'check_box' : 'check_box_outline_blank' }} | @endforeach