@extends('layouts.panel') @section('title', 'Gestión de Staff y Sesiones') @section('content') {{-- Variables de Sesión para JS --}} {{-- Lógica de Sesión y Seguridad --}} @php // 1. Resolución de Empresa y Sucursal buscando en todos los guards (admin, web) $user = null; $guards = ['admin', 'web']; foreach($guards as $g) { if(Auth::guard($g)->check()) { $user = Auth::guard($g)->user(); break; } } if (!$user) $user = Auth::user(); $empresaId = $user->empresa_id ?? ''; $sucursalId = $user->sucursal_asignada_id ?? ''; $isInactive = $user && isset($user->estado) && strtoupper($user->estado) === 'INACTIVO'; // --- LÓGICA DE TEMA DINÁMICO --- $convertColor = function($color) { if (empty($color)) return null; if (str_starts_with($color, '#')) return $color; if (str_starts_with($color, '0x')) return '#' . substr($color, -6); return $color; }; $getContrastColor = function($hex) { if(!$hex) return '#ffffff'; $hex = str_replace('#', '', $hex); if(strlen($hex) == 3) $hex = $hex[0].$hex[0].$hex[1].$hex[1].$hex[2].$hex[2]; $r = hexdec(substr($hex, 0, 2)); $g = hexdec(substr($hex, 2, 2)); $b = hexdec(substr($hex, 4, 2)); $yiq = (($r * 299) + ($g * 587) + ($b * 114)) / 1000; return ($yiq >= 128) ? '#0f172a' : '#ffffff'; }; $panelColor = $convertColor($user->color_preferido ?? null) ?? '#020617'; $bgColor = $convertColor($user->color_fondo_preferido ?? null) ?? '#f8fafc'; $textColor = $getContrastColor($bgColor); $isDark = ($textColor === '#ffffff'); $bgPage = $bgColor; $accentColor = $panelColor; if ($panelColor === '#020617' || $panelColor === '#000000') { $accentColor = '#ef4444'; } if ($isDark) { $bgCard = 'color-mix(in srgb, '.$bgColor.', white 2%)'; $bgSurface = 'color-mix(in srgb, '.$bgColor.', white 5%)'; $textMain = '#ffffff'; $textMuted = '#94a3b8'; $borderColor = 'rgba(255,255,255,0.05)'; $shadowColor = 'rgba(0,0,0,0.8)'; $switchInactive = 'rgba(255, 255, 255, 0.1)'; $switchKnob = '#ffffff'; } else { $bgCard = 'rgba(255, 255, 255, 0.95)'; $bgSurface = '#f8fafc'; $textMain = '#0f172a'; $textMuted = '#64748b'; $borderColor = '#e2e8f0'; $shadowColor = 'rgba(148, 163, 184, 0.15)'; $switchInactive = '#e2e8f0'; $switchKnob = '#ffffff'; } @endphp @if($isInactive)

Acceso Denegado

Su cuenta ha sido desactivada por la administración. No puede continuar en el sistema.

@csrf
@php return; @endphp {{-- Detener el renderizado del resto de la página --}} @endif {{-- Header con Tabs --}}

GESTIÓN DE STAFF

Control de permisos y monitoreo de sesiones

{{-- Tabs Navigation --}}
{{-- Tab 1: Gestión de Staff --}}
{{-- Búsqueda y Filtros --}}
{{-- Grid de Staff --}}
{{-- Generado dinámicamente por JS --}}

Cargando staff...

{{-- Tab 2: Control de Sesiones --}} {{-- Tab 3: Registro de Auditoría --}} @endsection @push('styles') @endpush @push('scripts') @endpush