<?php
include 'conexion.php';

header('Content-Type: application/json'); // Asegurar que el contenido es JSON
error_reporting(E_ALL);
ini_set('display_errors', 1);

$consulta = "SELECT c.id_concierto, c.nombre_concierto, c.artista, c.fecha, c.calle, c.colonia, c.numero_direccion, c.codigo_postal, c.estado, c.capacidad_total, 
                    z.nombre_zona, z.capacidad AS capacidad_zona, z.precio 
             FROM conciertos c 
             LEFT JOIN zonas z ON c.id_concierto = z.id_concierto
             ORDER BY c.id_concierto, 
                      FIELD(z.nombre_zona, 'General', 'Plata', 'Oro', 'VIP')";

$resultado = $conexionBD->query($consulta);

if (!$resultado) {
    echo json_encode(["error" => "Error en la consulta SQL: " . $conexionBD->error]);
    exit;
}

$conciertos = [];

while ($fila = $resultado->fetch_assoc()) {
    $id_concierto = $fila['id_concierto'];
    if (!isset($conciertos[$id_concierto])) {
        $conciertos[$id_concierto] = [
            'id' => $id_concierto,
            'nombre_concierto' => $fila['nombre_concierto'],
            'artista' => $fila['artista'],
            'fecha' => $fila['fecha'],
            'direccion' => $fila['calle'] . ', ' . $fila['colonia'] . ', ' . $fila['numero_direccion'] . ', CP: ' . $fila['codigo_postal'] . ', ' . $fila['estado'],
            'capacidad_total' => $fila['capacidad_total'],
            'zonas' => []
        ];
    }

    if (!empty($fila['nombre_zona'])) {
        $conciertos[$id_concierto]['zonas'][] = [
            'nombre_zona' => $fila['nombre_zona'],
            'capacidad' => $fila['capacidad_zona'],
            'precio' => $fila['precio']
        ];
    }
}

// Convertir el array a JSON y enviarlo
echo json_encode(array_values($conciertos), JSON_PRETTY_PRINT);

$conexionBD->close();
?>