<?php
session_start();
require_once '../../Controlador/Utilidades/Conexion_BD.php';

if (isset($_GET['IV']) && !empty($_GET['IV'])) {
    $id_vehiculo = intval($_GET['IV']);
    $connMySQL = new Conexion_BD();

    $sql = "SELECT * FROM vehiculos WHERE id=?";
    $stmt = $connMySQL->prepare($sql);
    $stmt->bind_param("i", $id_vehiculo);
    $stmt->execute();
    $vehiculo = $stmt->get_result()->fetch_assoc();
    $stmt->close();

    $dataTipoVehiculosSelect = $connMySQL->executeQuery("SELECT * FROM tipovehiculo ORDER BY id");
    $dataTipoCombustibleSelect = $connMySQL->executeQuery("SELECT * FROM tipocombustible ORDER BY id");

    $rowTipo = $connMySQL->executeQuery(
        "SELECT vehiculotipo FROM tipovehiculo WHERE id = {$vehiculo['tipo_vehiculo_id']}"
    )->fetch_assoc();
    $vehiculo_tipo_nombre = $rowTipo['vehiculotipo'] ?? '';

    $rowComb = $connMySQL->executeQuery(
        "SELECT combustibletipo FROM tipocombustible WHERE id = {$vehiculo['tipo_combustible_id']}"
    )->fetch_assoc();
    $combustible_nombre = $rowComb['combustibletipo'] ?? '';

    $connMySQL->closeConnection();
} else {
    header("Location: Adm_Gestion_Vehicular.php");
    exit;
}
?>


<!DOCTYPE html>
<html lang="es">

<head>
  <meta charset="UTF-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  <title>TSGJ - Editar Vehículo</title>
  <link rel="icon" href="../../Modelo/Archivos_Media/Color_LogoTipo.png" type="image/png" />
  <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet" />
  <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.10.5/font/bootstrap-icons.css" />
</head>

<body>

  <div class="container my-5">
    <a href="Adm_Gestion_Vehicular.php" class="btn btn-outline-primary mb-3">
      <i class="bi bi-arrow-left"></i> Volver a gestión de vehículos
    </a>

    <div class="card shadow">
      <div class="card-header bg-primary text-white text-center">
        <h4>Editar Vehículo</h4>
      </div>

      <div class="card-body">
        <form action="../../Controlador/Ctrl_Administrador/MySQL_Editar_Vehiculo.php" method="post" id="Editar_Vehiculo"
          novalidate>
          <input type="hidden" name="id_vehiculo" value="<?= $vehiculo['id']; ?>">

          <div class="row g-3">
            <div class="col-md-6">
              <label for="placa" class="form-label">Placa</label>
              <input type="text" class="form-control" id="placa" name="placa" maxlength="7"
                value="<?= htmlspecialchars($vehiculo['placa']); ?>" oninput="this.value = this.value.toUpperCase()">
            </div>

            <div class="col-md-6">
              <label for="ano" class="form-label">Año de fabricación</label>
              <input type="text" class="form-control" id="ano" name="ano_fabricacion" maxlength="4"
                value="<?= htmlspecialchars($vehiculo['ano_fabricacion']); ?>">
            </div>

            <div class="col-md-6">
              <label for="marca" class="form-label">Marca</label>
              <input type="text" class="form-control" id="marca" name="marca"
                value="<?= htmlspecialchars($vehiculo['marca']); ?>" oninput="this.value = this.value.toUpperCase()">
            </div>

            <div class="col-md-6">
              <label for="modelo" class="form-label">Modelo</label>
              <input type="text" class="form-control" id="modelo" name="modelo"
                value="<?= htmlspecialchars($vehiculo['modelo']); ?>" oninput="this.value = this.value.toUpperCase()">
            </div>

            <div class="col-md-6">
              <label for="tipo_vehiculo_id" class="form-label">Tipo de vehículo</label>
              <select name="tipo_vehiculo_id" id="tipo_vehiculo_id" class="form-select">
                <option value="<?= $vehiculo['tipo_vehiculo_id']; ?>" selected hidden>
                  <?= htmlspecialchars($vehiculo_tipo_nombre); ?></option>
                <?php while ($row = mysqli_fetch_array($dataTipoVehiculosSelect)): ?>
                  <option value="<?= $row["id"]; ?>"><?= utf8_encode($row["vehiculotipo"]); ?></option>
                <?php endwhile; ?>
              </select>
            </div>

            <div class="col-md-6">
              <label for="tipo_combustible_id" class="form-label">Tipo de combustible</label>
              <select name="tipo_combustible_id" id="tipo_combustible_id" class="form-select">
                <option value="<?= $vehiculo['tipo_combustible_id']; ?>" selected hidden>
                  <?= htmlspecialchars($combustible_nombre); ?></option>
                <?php while ($row = mysqli_fetch_array($dataTipoCombustibleSelect)): ?>
                  <option value="<?= $row["id"]; ?>"><?= utf8_encode($row["combustibletipo"]); ?></option>
                <?php endwhile; ?>
              </select>
            </div>

            <div class="col-md-6">
              <label for="capacidad_combustible" class="form-label">Capacidad de Combustible (GL)</label>
              <input type="text" class="form-control" id="capacidad_combustible" name="capacidad_combustible"
                value="<?= htmlspecialchars($vehiculo['capacidad_combustible']); ?>">
            </div>
            <!-- Campo Kilometraje Inicial - Visible solo editable para administradores -->
            <div class="col-md-6">
              <label for="kilometraje_inicial" class="form-label">Kilometraje Inicial</label>

              <?php if (isset($_SESSION['rol']) && $_SESSION['rol'] === 'administrador'): ?>
                <!-- Si es administrador, puede editar -->
                <input type="number" class="form-control" id="kilometraje_inicial" name="kilometraje_inicial"
                  value="<?= htmlspecialchars($vehiculo['kilometraje_inicial']); ?>" min="0">
              <?php else: ?>
                <!-- Si es supervisor u otro rol, solo lectura -->
                <input type="number" class="form-control" id="kilometraje_inicial"
                  value="<?= htmlspecialchars($vehiculo['kilometraje_inicial']); ?>" readonly>
              <?php endif; ?>

              <div class="invalid-feedback"></div>
            </div>


            <div class="col-12 text-center mt-4">
              <div class="d-flex justify-content-center gap-3 flex-wrap">
                <button type="submit" class="btn btn-success px-4">Guardar Cambios</button>
              </div>
            </div>
          </div>
        </form>
      </div>
    </div>
  </div>

  <!-- Scripts -->
  <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
  <script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
  <script src="../../Modelo/Archivos_JS/Validacion_Editar_Vehiculo.js"></script>

  <script>
    document.getElementById("ano").addEventListener("input", function () {
      this.value = this.value.replace(/\D/g, '').slice(0, 4);
    });

    document.getElementById("capacidad_combustible").addEventListener("input", function () {
      this.value = this.value.replace(/[^\d.]/g, '');
    });
  </script>

  <?php if (isset($_SESSION['error_placa'])): ?>
    <script>
      Swal.fire({
        icon: 'error',
        title: 'Error en actualización',
        text: '<?= $_SESSION['error_placa'] ?>',
        confirmButtonText: 'Aceptar'
      });
    </script>
    <?php unset($_SESSION['error_placa']); ?>
  <?php endif; ?>
</body>

</html>