<?php require __DIR__ . '/../../includes/navBar.php'; ?>
<?php require __DIR__ . '/../../includes/modal.php'; ?>

<div class="container my-5">

    <div class="card card-rounded card-shadow border-0">

        <!-- HEADER -->

        <div class="card-header header-dark px-4 py-3">

            <div class="d-flex justify-content-between align-items-center flex-wrap gap-3">

                <!-- IZQUIERDA -->

                <div class="d-flex align-items-center gap-4">
                    <h4 class="mb-0 tittle-shadow">
                        <i class="fas fa-folder-open icon-xl me-2"></i> Listado de Servicios
                    </h4>

                    <div class="d-flex align-items-center gap-3">

                        <!-- AÑO -->

                        <form method="GET" action="index.php" class="d-flex align-items-center gap-2 select-group mb-0">
                            
                            <input type="hidden" name="opt" value="listar_servicios">

                            <i class="fas fa-calendar-alt text-light"></i>

                            <select name="anio" class="form-select custom-select select-informe" onchange="this.form.submit()">

                                <?php for ($i = $anioActual; $i >= 2020; $i--): ?>
                                    <option value="<?= $i ?>" <?= $i == $anioSeleccionado ? 'selected' : '' ?>>
                                        <?= $i ?>
                                    </option>
                                <?php endfor; ?>

                            </select>
                        </form>

                    </div>
                </div>

                <!-- DERECHA -->

                <div class="d-flex gap-2">

                    <!-- BOTÓN FANTASMA (mantiene el layout) -->

                    <a class="btn btn-success invisible">
                        <i class="fas fa-plus me-1"></i>
                    </a>

                    <a href="?opt=crear_servicio" class="btn btn-soft-secondary text-white">
                        <i class="fas fa-arrow-left me-1"></i>
                        Volver
                    </a>
                </div>
            </div>
        </div>

        <!-- BODY -->

        <div class="card-body px-4 py-4">

            <?php if (empty($servicios)): ?>
                <div class="text-center text-muted py-5">
                    No hay servicios registrados.
                </div>
            <?php else: ?>

                <!-- FILTRO POR COLUMNA + BUSCADOR -->

                <!-- Input de búsqueda añadido automáticamente por DataTables -->

                    <div class="d-flex align-items-center gap-2">

                        <select id="columnFilter"
                                class="form-select form-select-sm ms-2"
                                style="width: auto;">
                            <option value="0">ID Servicio</option>
                            <option value="1">Fecha Registro</option>
                            <option value="2">Fecha Finalizado</option>
                            <option value="3">Equipo</option>
                            <option value="4">Estado</option>
                            <option value="5">Cliente</option>
                            <option value="6">Operador</option>
                        </select>

                    </div>

                <div class="table-responsive">
                    <table id="tablaServicios" class="table table-hover align-middle mb-0">

                        <thead class="table-dark">
                            <tr>
                                <th>ID</th>
                                <th>F. Registro</th>
                                <th>F. Finalizado</th>
                                <th>Equipo</th>
                                <th>Estado</th>
                                <th>Cliente</th>
                                <th>Operador</th>
                                <th class="text-center">Acciones</th>
                            </tr>
                        </thead>

                        <tbody>
                        <?php foreach ($servicios as $s): ?>
                            <tr>
                                <td><?= $s['id'] ?></td>
                                <td data-order="<?= $s['fecha_registro'] ?>">
                                    <?= htmlspecialchars($s['fecha_formateada']) ?>
                                </td>
                                <td data-order="<?= $s['fecha_terminado'] ?>">
                                    <?= htmlspecialchars($s['fecha_formateada_term']) ?>
                                </td>
                                <td><?= htmlspecialchars($s['equipo']) ?></td>
                                <td><?= htmlspecialchars($s['estado']) ?></td>
                                <td><?= htmlspecialchars($s['cliente_nombre'] . ' ' . $s['cliente_apellido']) ?></td>
                                <td><?= htmlspecialchars($s['vendedor_nombre'] . ' ' . $s['vendedor_apellido']) ?></td>

                                <td class="text-center">
                                    <div class="d-inline-flex align-items-center gap-2">

                                        <!-- BOTONES SEGÚN ESTADO DE SERVICIO -->

                                        <?php if ($s['estado'] === 'Pendiente'): ?>

                                            <!-- DETALLE DEL SERVICIO -->

                                            <a href="?opt=detalle_servicio&id=<?= $s['id'] ?>"
                                            class="btn btn-primary btn-sm"
                                            title="Detalle Servicio">
                                                <i class="fas fa-file-alt fa-sm fa-fw"></i>
                                            </a>

                                            <!-- ACTUALIZAR SERVICIO -->

                                            <?php if ($esAdmin): ?>
                                                <a href="?opt=resetear_datos_servicio&id=<?= $s['id'] ?>"
                                                class="btn btn-success btn-sm"
                                                title="Actualizar Servicio">
                                                    <i class="fas fa-edit fa-sm fa-fw"></i>
                                                </a>
                                            <?php endif; ?>
                                            
                                        <?php elseif ($s['estado'] === 'Pendiente - Enviado'): ?>

                                            <!-- DETALLE DEL SERVICIO -->

                                            <a href="?opt=detalle_servicio&id=<?= $s['id'] ?>"
                                            class="btn btn-primary btn-sm"
                                            title="Detalle Servicio">
                                                <i class="fas fa-file-alt fa-sm fa-fw"></i>
                                            </a>

                                            <!-- DETALLE INSUMOS UTILIZADOS -->

                                            <a href="?opt=detalle_insumos_servicio&id=<?= $s['id'] ?>"
                                            class="btn btn-primary btn-sm"
                                            title="Detalle Insumos">
                                                <i class="fas fa-box-open fa-sm fa-fw"></i>
                                            </a>

                                            <!-- FINALIZAR SERVICIO -->

                                            <?php if ($esAdmin): ?>
                                                <button
                                                    class="btn btn-success btn-sm btnConfirmar"
                                                    title="Finalizar Servicio"
                                                    data-action="finalizar_servicio"
                                                    data-id="<?= $s['id'] ?>"
                                                    data-mensaje="¿Estás seguro que deseas finalizar este servicio?"
                                                    data-titulo="Finalizar Servicio"
                                                    data-bs-toggle="modal"
                                                    data-bs-target="#modalConfirmacion">

                                                    <i class="fas fa-check fa-sm fa-fw"></i>
                                                </button>
                                            <?php endif; ?>

                                            <!-- CANCELAR SERVICIO -->

                                            <?php if ($esAdmin): ?>
                                                <button
                                                    class="btn btn-danger btn-sm btnConfirmar"
                                                    title="Cancelar Servicio"
                                                    data-action="cancelar_servicio"
                                                    data-id="<?= $s['id'] ?>"
                                                    data-mensaje="¿Estás seguro de que deseas cancelar este servicio?"
                                                    data-titulo="Cancelar Servicio"
                                                    data-bs-toggle="modal"
                                                    data-bs-target="#modalConfirmacion">

                                                    <i class="fas fa-times fa-fw"></i>
                                                </button>
                                            <?php endif; ?>

                                        <?php elseif ($s['estado'] === 'Finalizado'): ?>

                                            <!-- DETALLE DEL SERVICIO -->

                                            <a href="?opt=detalle_servicio&id=<?= $s['id'] ?>"
                                            class="btn btn-primary btn-sm"
                                            title="Detalle Servicio">
                                                <i class="fas fa-file-alt fa-sm fa-fw"></i>
                                            </a>

                                            <!-- DETALLE INSUMOS UTILIZADOS -->

                                            <a href="?opt=detalle_insumos_servicio&id=<?= $s['id'] ?>"
                                            class="btn btn-primary btn-sm"
                                            title="Detalle Insumos">
                                                <i class="fas fa-box-open fa-sm fa-fw"></i>
                                            </a>

                                        <?php elseif ($s['estado'] === 'Cancelado'): ?>

                                            <!-- DETALLE SERVICIO -->

                                            <a href="?opt=detalle_servicio&id=<?= $s['id'] ?>"
                                            class="btn btn-primary btn-sm"
                                            title="Detalle Servicio">
                                                <i class="fas fa-file-alt fa-sm fa-fw"></i>
                                            </a>

                                            <!-- DETALLE INSUMOS UTILIZADOS -->

                                            <a href="?opt=detalle_insumos_servicio&id=<?= $s['id'] ?>"
                                            class="btn btn-primary btn-sm"
                                            title="Detalle Insumos">
                                                <i class="fas fa-box-open fa-sm fa-fw"></i>
                                            </a>

                                        <?php endif; ?>
                                    </div>
                                </td>
                            </tr>
                        <?php endforeach; ?>
                        </tbody>
                    </table>
                </div>
            <?php endif; ?>

            <!-- Errores provenientes de servicioController -->

            <!-- ERROR -->

            <script>
                const serverErrors = <?php 
                    if (!empty($_SESSION['flash_error'])) {
                        $errorsArray = explode('<br>', $_SESSION['flash_error']);
                        unset($_SESSION['flash_error']);
                        echo json_encode($errorsArray);
                    } else {
                        echo '[]';
                    }
                ?>;
            </script>

            <!-- SUCCES -->

            <script>
                const serverSuccess = <?php
                    if (!empty($_SESSION['flash_success'])) {
                        $successArray = explode('<br>', $_SESSION['flash_success']);
                        unset($_SESSION['flash_success']);
                        echo json_encode($successArray);
                    } else {
                        echo '[]';
                    }
                ?>;
            </script>

            <!-- MODAL -->

            <script src="js/globalModal.js"></script>

        </div>
    </div>
</div>

<!-- Validar mediante js -->

<script src="js/servicios/servicioValidator.js"></script>

<!-- Tabla, búsqueda y filtro por columnas -->

<script src="js/servicios/servicioTableLista.js"></script>