@extends('layouts.app') @section('title','Roles y permisos — '.config('app.name')) @section('content') @php $roleLabels = ['superadministrador'=>'Superadministrador','administrador'=>'Administrador','instructor'=>'Instructor','estudiante'=>'Estudiante']; $roleDescriptions = [ 'superadministrador'=>'Control total del sistema, permisos y configuración sensible.', 'administrador'=>'Opera usuarios, cursos, ventas y contenido según los permisos asignados.', 'instructor'=>'Crea cursos, administra sus contenidos y acompaña estudiantes.', 'estudiante'=>'Accede a cursos, actividades, progreso y certificados.', ]; $permissionLabels = [ 'audit.view'=>'Consultar auditoría','certificates.manage'=>'Administrar certificados','coupons.manage'=>'Administrar promociones', 'courses.create'=>'Crear cursos','courses.manage-own'=>'Editar cursos propios','courses.moderate'=>'Revisar y publicar cursos', 'enrollments.manage'=>'Administrar inscripciones','orders.manage'=>'Administrar órdenes y pagos','orders.view'=>'Consultar órdenes y pagos', 'reports.export'=>'Exportar reportes','reviews.moderate'=>'Moderar reseñas','roles.manage'=>'Administrar roles y permisos', 'settings.manage'=>'Modificar configuración','users.manage'=>'Administrar usuarios','users.view'=>'Consultar usuarios', ]; $permissionGroups = ['courses'=>'Aprendizaje','users'=>'Personas','enrollments'=>'Personas','orders'=>'Ventas','coupons'=>'Ventas','certificates'=>'Certificados','reviews'=>'Contenido','reports'=>'Análisis','audit'=>'Seguridad','roles'=>'Seguridad','settings'=>'Sistema']; @endphp
Personas y acceso

Roles y permisos

Define responsabilidades sin exponer áreas sensibles del sistema.

Ver usuarios
@foreach($roles as $role)
{{ str_pad($loop->iteration,2,'0',STR_PAD_LEFT) }}
{{ $roleLabels[$role->name] ?? Str::headline($role->name) }}

{{ $roleDescriptions[$role->name] ?? 'Rol operativo del sistema.' }}

{{ number_format($role->users_count) }} usuarios{{ $role->permissions->count() }} permisos
@endforeach
Política del rol

Permisos del administrador

Los permisos se agrupan por responsabilidad para facilitar su revisión.

{{ $adminPermissions->count() }} de {{ $permissions->count() }} activos
@csrf @method('PUT') @foreach($permissions->groupBy(fn($permission) => $permissionGroups[Str::before($permission->name,'.')] ?? 'Otros') as $group => $groupPermissions)
{{ $group }}{{ $groupPermissions->count() }} capacidades
@foreach($groupPermissions as $permission) @endforeach
@endforeach
{{ auth()->user()->hasRole('superadministrador') ? 'Los cambios se aplican a todas las cuentas con rol Administrador.' : 'Solo un superadministrador puede modificar esta política.' }} @if(auth()->user()->hasRole('superadministrador'))@endif
@endsection