@if (session('success') || session('error') || session('warning'))
@endif
@php $filtroActual = $filtro ?? 'activos'; @endphp
@forelse($funcionarios as $funcionario)
@php
$nombre = $funcionario->user->nombre ?? '';
$apellido = $funcionario->user->apellido ?? '';
$cedula = $funcionario->user->cedula ?? '—';
$email = $funcionario->user->email ?? '—';
$telefono = $funcionario->user->telefono ?? '—';
$iniciales = mb_substr($nombre, 0, 1) . mb_substr($apellido, 0, 1);
$estadoLabel = 'Inactivo';
$estadoClass = 'bg-warning-subtle text-warning-emphasis';
$estadoRaw = $funcionario->estado->value ?? $funcionario->estado;
if ($funcionario->trashed()) {
$estadoLabel = 'Eliminado';
$estadoClass = 'bg-danger-subtle text-danger-emphasis';
} elseif ($estadoRaw === 'activo') {
$estadoLabel = 'Activo';
$estadoClass = 'bg-success-subtle text-success-emphasis';
}
$puedeGestionarActivo = !$funcionario->trashed() && $estadoRaw === 'activo';
$puedeRestaurar = $funcionario->trashed() || $estadoRaw === 'inactivo';
$busquedaRow = strtolower(trim("$nombre $apellido $cedula $email $telefono"));
@endphp
{{-- Avatar --}}
{{ $iniciales }}
{{-- Info --}}
{{ $cedula }}
{{ $email }}
{{ $telefono }}
{{-- Acciones --}}
@if ($puedeGestionarActivo)
@endif
@if ($puedeRestaurar)
@endif
{{-- Modal de confirmación de eliminación --}}
@if ($puedeGestionarActivo)
@endif
@empty
No hay funcionarios registrados.
@endforelse
@if ($funcionarios instanceof \Illuminate\Pagination\LengthAwarePaginator && $funcionarios->hasPages())
Mostrando {{ $funcionarios->firstItem() }}–{{ $funcionarios->lastItem() }} de
{{ $funcionarios->total() }} resultados
{{ $funcionarios->withQueryString()->links('pagination::simple-bootstrap-5') }}
@endif