<?php


// Incluir la biblioteca Guzzle
require 'vendor/autoload.php';

// Configuración de las credenciales de Shopify
$shopifyDomain = 'extreme-simracing.myshopify.com';
$accessToken = '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';
$apiKey = 'b209e8ae2b90875a68b5aa6f5df88aab';
$apiSecret = 'b209e8ae2b90875a68b5aa6f5df88aab';

// Configuración de MySQL
$dbHost = 'localhost';
$dbUser = 'ndconsulta';
$dbPass = 'Nitro2021';
$dbName = 'db_productos';

// Conexión a MySQL
$mysqli = new mysqli($dbHost, $dbUser, $dbPass, $dbName);

if ($mysqli->connect_error) {
    die('Error de conexión a MySQL: ' . $mysqli->connect_error);
}
$deleteVariantsQuery = "DELETE FROM pd_es_variants";
$mysqli->query($deleteVariantsQuery);

// Limpiar la tabla pd_es_products
$deleteProductsQuery = "DELETE FROM pd_es_products";
$mysqli->query($deleteProductsQuery);


// Endpoint de Shopify para obtener productos
$url = "https://$shopifyDomain/admin/api/2023-10/products.json?&product_type=simagic&limit=250";

// Configuración de la solicitud a la API de Shopify
$client = new GuzzleHttp\Client();
$response = $client->request('GET', $url, [
    'headers' => [
        'Content-Type' => 'application/json',
        'X-Shopify-Access-Token' => $accessToken,
    ],
]);

// Decodificar la respuesta JSON
$data = json_decode($response->getBody(), true);

// Procesar los productos y almacenarlos en MySQL
foreach ($data['products'] as $product) {
    $productId = $product['id'];
    $productName = $product['title'];
    $productStatus = $product['status']; // Puedes ajustar esto dependiendo de cómo determines el estado del producto

    // Insertar en la tabla de MySQL (Información del Producto)
    $insertProductQuery = "INSERT INTO pd_es_products (id_producto, nombre, estado) VALUES ('$productId', '$productName', '$productStatus')";
    $mysqli->query($insertProductQuery);

    // Procesar las variantes del producto
    foreach ($product['variants'] as $variant) {
        $variantId = $variant['id'];
        $variantTitle = $variant['title'];
        $variantPrice = $variant['price'];
        $variantSku = $variant['sku'];
        $variantInventory = $variant['inventory_quantity'];
        $variantGrams = $variant['grams'];

        // Insertar en la tabla de MySQL (Información de la Variante)
        $insertVariantQuery = "INSERT INTO pd_es_variants (id_producto, id_variante, titulo_variante, precio_variante, sku_variante, inventario, gramos) VALUES ('$productId', '$variantId', '$variantTitle', '$variantPrice', '$variantSku', '$variantInventory', '$variantGrams')";
        $mysqli->query($insertVariantQuery);
    }
}

// Cerrar la conexión a MySQL
$mysqli->close();

echo 'Productos importados exitosamente a MySQL.';
