<!doctype html>
<html lang="es">
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>Mis Turnos</title>
    @vite(['resources/css/app.css', 'resources/js/app.js'])
</head>
<body id="top" class="d-flex flex-column min-vh-100 bg-light">
    <header class="app-navbar">
        <nav class="navbar navbar-expand-lg">
            <div class="container">
                <a class="navbar-brand d-flex align-items-center" href="/cliente/dashboard">
                    <div class="d-flex align-items-center justify-content-center" style="width: 130px; height: 52px;">
                        <img src="{{ asset('images/logo.png') }}" alt="Logo" class="img-fluid" style="max-height: 70px; width: auto; object-fit: contain;">
                    </div>
                    <span class="app-navbar-greeting ms-2">¡Hola, {{ explode(' ', trim((string) session('cliente_nombre', 'Cliente')))[0] }}!</span>
                </a>

                <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#menuPrincipal" aria-controls="menuPrincipal" aria-expanded="false" aria-label="Toggle navigation">
                    <span class="navbar-toggler-icon"></span>
                </button>

                <div class="collapse navbar-collapse" id="menuPrincipal">
                    <ul class="navbar-nav mx-auto mb-2 mb-lg-0">
                        <li class="nav-item"><a class="btn app-navbar-link" href="/cliente/dashboard#servicios">Servicios</a></li>
                        <li class="nav-item"><a class="btn app-navbar-link" href="/cliente/dashboard#quienes-somos">Quienes Somos</a></li>
                        <li class="nav-item"><a class="btn app-navbar-link" href="/cliente/dashboard#equipo">Equipo</a></li>
                        <li class="nav-item"><a class="btn app-navbar-link" href="/cliente/dashboard#ubicacion">Ubicacion</a></li>
                        <li class="nav-item"><a class="btn app-navbar-link" href="/cliente/dashboard#formulario">Pedir Turno</a></li>
                        <li class="nav-item"><a class="btn app-navbar-link" href="/cliente/mis-turnos">Mis Turnos</a></li>
                        <li class="nav-item"><a class="btn app-navbar-link" href="/cliente/ayuda" title="Ayuda para clientes" aria-label="Ayuda para clientes">¿Necesitas Ayuda?</a></li>
                    </ul>

                    <a class="btn app-navbar-link" href="/logout">Cerrar Sesion</a>
                </div>
            </div>
        </nav>
    </header>

    <main class="container py-5 flex-grow-1">
        <div class="row justify-content-center">
            <div class="col-12 col-lg-10">
                <h1 class="h3 mb-4 text-center">Mis Turnos</h1>

                <div class="card shadow-sm mb-4">
                    <div class="card-body">
                        <form method="GET" action="/cliente/mis-turnos" class="row g-3 align-items-end">
                            <div class="col-12 col-md-5">
                                <label for="periodo" class="form-label">Periodo</label>
                                <select id="periodo" name="periodo" class="form-select">
                                    <option value="todos" {{ ($filtroPeriodo ?? 'todos') === 'todos' ? 'selected' : '' }}>Todos</option>
                                    <option value="proximos" {{ ($filtroPeriodo ?? '') === 'proximos' ? 'selected' : '' }}>Proximos</option>
                                    <option value="pasados" {{ ($filtroPeriodo ?? '') === 'pasados' ? 'selected' : '' }}>Pasados</option>
                                </select>
                            </div>
                            <div class="col-12 col-md-5">
                                <label for="estado_id" class="form-label">Estado</label>
                                <select id="estado_id" name="estado_id" class="form-select">
                                    <option value="0">Todos</option>
                                    @foreach(($estadosTurno ?? collect()) as $estado)
                                        <option value="{{ $estado->id }}" {{ (int) ($filtroEstadoId ?? 0) === (int) $estado->id ? 'selected' : '' }}>
                                            {{ $estado->descripcion }}
                                        </option>
                                    @endforeach
                                </select>
                            </div>
                            <div class="col-12 col-md-2 d-grid">
                                <button type="submit" class="btn btn-primary">Filtrar</button>
                            </div>
                        </form>
                    </div>
                </div>

                @if(session('turno_success'))
                    <div class="alert alert-success" role="alert">
                        {{ session('turno_success') }}
                    </div>
                @endif

                @if(session('turno_error'))
                    <div class="alert alert-danger" role="alert">
                        {{ session('turno_error') }}
                    </div>
                @endif

                @forelse($turnos as $turno)
                    <div class="card shadow-sm mb-4">
                        <div class="card-body">
                            @php
                                $estadoDescripcion = trim((string) ($turno->estadoTurno?->descripcion ?? 'Sin estado'));
                                $estadoClave = mb_strtolower($estadoDescripcion);
                                $estadoClase = str_contains($estadoClave, 'cancel')
                                    ? 'danger'
                                    : (str_contains($estadoClave, 'confirm') ? 'success' : 'secondary');
                                $puedeCancelar = !str_contains($estadoClave, 'cancel')
                                    && $turno->inicio
                                    && $turno->inicio->greaterThanOrEqualTo(now());
                            @endphp
                            <div class="row">
                                <div class="col-12 col-md-6">
                                    <p class="mb-2"><strong>Profesional:</strong> {{ trim((string) (($turno->profesional?->persona?->nombre ?? '') . ' ' . ($turno->profesional?->persona?->apellido ?? ''))) ?: '-' }}</p>
                                    <p class="mb-2"><strong>Profesión:</strong> {{ $turno->profesional?->profesion?->titulo ?? '-' }}</p>
                                    <p class="mb-2"><strong>Servicio:</strong> {{ $turno->servicio?->titulo ?? '-' }}</p>
                                    <p class="mb-2"><strong>Modalidad:</strong> {{ $turno->modalidad?->descripcion ?? '-' }}</p>
                                </div>
                                <div class="col-12 col-md-6">
                                    <p class="mb-2"><strong>Fecha:</strong> {{ optional($turno->inicio)->format('d/m/Y') ?? '-' }}</p>
                                    <p class="mb-2"><strong>Horario:</strong> {{ optional($turno->inicio)->format('H:i') ?? '-' }}</p>
                                    <p class="mb-2"><strong>Estado:</strong> <span class="badge bg-{{ $estadoClase }}">{{ $estadoDescripcion }}</span></p>
                                </div>
                            </div>

                            @if($puedeCancelar)
                                <div class="d-flex justify-content-end mt-3">
                                    <form method="POST" action="/cliente/turnos/{{ $turno->id }}/cancelar" onsubmit="return confirm('¿Confirmás cancelar este turno?');">
                                        @csrf
                                        <button type="submit" class="btn btn-sm btn-outline-danger">Cancelar turno</button>
                                    </form>
                                </div>
                            @endif
                        </div>
                    </div>
                @empty
                    <div class="alert alert-info text-center" role="alert">
                        No tienes turnos registrados. <a href="/cliente/dashboard#formulario">Solicitá un turno</a>
                    </div>
                @endforelse

                @if(method_exists($turnos, 'links'))
                    <div class="d-flex justify-content-center mt-4">
                        {{ $turnos->links() }}
                    </div>
                @endif
            </div>
        </div>
    </main>

    <footer class="app-footer mt-auto py-4">
        <div class="container">
            <div class="row g-4 align-items-start text-center">
                <div class="col-12 col-md-4">
                    <div class="d-inline-flex align-items-center justify-content-center" style="width: 120px; height: 52px;">
                        <img src="{{ asset('images/logo.png') }}" alt="Logo" class="img-fluid" style="max-height: 70px; width: auto; object-fit: contain;">
                    </div>
                </div>

                <div class="col-12 col-md-4 text-center">
                    <h3 class="h6 mb-2">Redes Sociales</h3>
                    <p class="mb-2"><a href="https://www.instagram.com/abogadasdellitoral?utm_source=ig_web_button_share_sheet&igsh=ZDNlZDc0MzIxNw==" target="_blank" rel="noopener noreferrer">Instagram</a></p>
                    <p class="small mb-0">Desarrollado por Luciano Belini</p>
                </div>

                <div class="col-12 col-md-4">
                    <h3 class="h6 mb-2">Ubicacion</h3>
                    <p class="mb-0">Direccion pendiente de definir</p>
                </div>
            </div>
        </div>
    </footer>

    <a href="#top" class="btn btn-primary rounded-circle position-fixed bottom-0 end-0 m-4 d-flex align-items-center justify-content-center" style="width: 44px; height: 44px;" aria-label="Volver arriba" title="Volver arriba">
        ↑
    </a>
    @include('partials.reportar-falla-boton')
</body>
</html>
