@php
$rolePermNames = $role->permissions->pluck('name')->toArray();
$modulos = [
'Usuarios' => 'admin.usuarios',
'Roles y Permisos' => 'admin.roles',
'Configuraciones' => 'admin.configuraciones',
'Secretarias' => 'admin.secretarias',
'Consultorios' => 'admin.consultorios',
'Pacientes' => 'admin.pacientes',
'Doctores' => 'admin.doctores',
'Horarios' => 'admin.horarios',
'Reservas y Citas' => 'admin.reservas',
'Historial Clínico' => 'admin.historial',
'Acciones de Citas' => ['cargar_datos_consultorios', 'cargar_reserva_doctores', 'ver_reservas', 'admin.eventos']
];
@endphp
@foreach($modulos as $moduloNombre => $prefijo)
@php
if (is_array($prefijo)) {
$moduloPermisos = $permisos->filter(function($p) use ($prefijo) {
foreach ($prefijo as $pre) {
if (str_starts_with($p->name, $pre)) return true;
}
return false;
});
} else {
$moduloPermisos = $permisos->filter(function($p) use ($prefijo) {
return str_starts_with($p->name, $prefijo);
});
}
$moduloId = 'mod_' . \Illuminate\Support\Str::slug($moduloNombre);
@endphp
@if($moduloPermisos->count() > 0)
{{ $moduloNombre }}
{{ $moduloPermisos->count() }}
@foreach($moduloPermisos as $permiso)
@php
$checked = in_array($permiso->name, old('permissions', $rolePermNames));
@endphp
@endforeach
@endif
@endforeach