<?php
// Incluir el archivo que contiene la función de redimensionar imagen
include 'funcionredimension.php';

// Datos de conexión a la base de datos
$servername = "localhost";
$username = "ndconsulta";
$password = "Nitro2021";
$dbname = "db_compranet";

// Crear conexión
$conn = new mysqli($servername, $username, $password, $dbname);

// Verificar conexión
if ($conn->connect_error) {
    die("Error de conexión: " . $conn->connect_error);
}

// Consulta SQL unificada para obtener los datos de las imágenes
$sql = "SELECT db_inventarios_compranet.mps_imagenes.link_imagen, vw_sin_imagen_variacion.idProducto, vw_sin_imagen_variacion.idVariacion
        FROM vw_sin_imagen_variacion
        INNER JOIN db_inventarios_compranet.mps_imagenes ON vw_sin_imagen_variacion.referenciaProveedor = db_inventarios_compranet.mps_imagenes.sku
        ORDER BY db_inventarios_compranet.mps_imagenes.link_imagen";

$result = $conn->query($sql);

if ($result->num_rows > 0) {
    $processedVariations = [];

    while ($row = $result->fetch_assoc()) {
        $url = $row["link_imagen"];
        $idProducto = $row["idProducto"];
        $idVariacion = $row["idVariacion"];

        // Redimensionar la imagen
        $imagenRedimensionada = redimensionarImagen($url, 1200, 1200);
        if ($imagenRedimensionada === false) {
            echo "Error al redimensionar la imagen.";
            continue;
        }

        // Ruta donde se guardará la imagen
        $rutaGuardado = "E:/www/sistema.compranet.com.co/public/images/202/";

        // Obtener el nombre de la imagen desde la URL
        $nombreImagen = basename($url);

        // Guardar la imagen redimensionada en el servidor
        $imagenGuardada = file_put_contents($rutaGuardado . $nombreImagen, $imagenRedimensionada);

        // Si la imagen se guardó exitosamente
        if ($imagenGuardada !== false) {
            // Link de la imagen
            $linkImagen = "J:/images/202/" . $nombreImagen;

            // Insertar en la tabla tb_imagenes_principal siempre
            $sql_insert_principal = "INSERT INTO tb_imagenes_principal (idProducto, linkImagen, idEstado, esPrincipal) VALUES ('$idProducto', '$linkImagen', 1, 0)";
            $conn->query($sql_insert_principal);

            // Insertar en la tabla tb_imagenes_variantes solo para la primera imagen de cada variación
            if (!isset($processedVariations[$idVariacion])) {
                $sql_insert_variante = "INSERT INTO tb_imagenes_variantes (idVariante, idEstado, linkImagen, esPrincipal, pos) VALUES ('$idVariacion', 1, '$linkImagen', 1, 1)";
                $conn->query($sql_insert_variante);
                $processedVariations[$idVariacion] = true; // Marcar esta variación como procesada
            }
        } else {
            echo "Error al guardar la imagen.";
        }
    }
} else {
    echo "No se encontraron imágenes.";
}

// Cerrar conexión
$conn->close();
?>
