import os
import re
import random

base_dir = os.path.dirname(os.path.abspath(__file__))
index_path = os.path.join(base_dir, 'preview', 'index.html')
products_path = os.path.join(base_dir, 'preview', 'products-data.js')

with open(index_path, 'r', encoding='utf-8') as f:
    index_html = f.read()

with open(products_path, 'r', encoding='utf-8') as f:
    products_data = f.read()

working_images = [
    'https://tiendaeme.com.uy/wp-content/uploads/2025/09/Adaptador-Carlinkit-Carplay-Android-Auto-Inalambrico-32-Gb-800x800.jpg',
    'https://tiendaeme.com.uy/wp-content/uploads/2025/06/Aros-Bloque-800x800.webp',
    'https://tiendaeme.com.uy/wp-content/uploads/2026/04/Bolsa-Termica-Reutilizable-Para-Compras-Mantiene-Frio-y-Calor-800x800.jpg',
    'https://tiendaeme.com.uy/wp-content/uploads/2025/09/Carlinkit-Adaptador-Inalambrico-para-Carplay-y-Android-Auto-800x800.jpg',
    'https://tiendaeme.com.uy/wp-content/uploads/2025/07/Adaptador-Carplay-Android-Auto-Inalambrico-Carlinkit-Mini-Ultra-6-800x800.webp',
    'https://tiendaeme.com.uy/wp-content/uploads/2025/08/Funda-de-Silicona-para-Llave-de-Autos-Volskswagen.webp',
    'https://tiendaeme.com.uy/wp-content/uploads/2025/08/Funda-Protectora-de-Cuero-con-Metal-para-Llave-de-Autos-BYD-800x800.jpg',
    'https://tiendaeme.com.uy/wp-content/uploads/2026/02/Funda-Protectora-de-Cuero-con-Metal-para-Llave-de-Autos-Chery-y-Omoda-gris.webp',
    'https://tiendaeme.com.uy/wp-content/uploads/2025/10/Funda-Protectora-de-Cuero-con-Metal-para-Llave-de-Autos-Chery-y-Omoda-800x800.jpg',
    'https://tiendaeme.com.uy/wp-content/uploads/2025/09/Funda-Protectora-de-Cuero-con-Metal-para-Llave-de-Autos-Volkswagen-800x800.jpg',
    'https://tiendaeme.com.uy/wp-content/uploads/2025/08/Funda-Protectora-de-Fibra-de-Carbono-para-Llave-de-Autos-Chery-y-Omoda-800x800.jpg',
    'https://tiendaeme.com.uy/wp-content/uploads/2025/07/Funda-Protectora-de-Fibra-de-Carbono-para-Llave-de-Volkswagen-800x800.jpg'
]

def map_url(match):
    url = match.group(0).lower()
    if 'carlinkit-mini' in url or '2air' in url: return 'https://tiendaeme.com.uy/wp-content/uploads/2025/07/Adaptador-Carplay-Android-Auto-Inalambrico-Carlinkit-Mini-Ultra-6-800x800.webp'
    if '786283' in url or '2gb' in url: return 'https://tiendaeme.com.uy/wp-content/uploads/2025/09/Adaptador-Carlinkit-Carplay-Android-Auto-Inalambrico-32-Gb-800x800.jpg'
    if 'tbox' in url or '4gb' in url: return 'https://tiendaeme.com.uy/wp-content/uploads/2025/09/Carlinkit-Adaptador-Inalambrico-para-Carplay-y-Android-Auto-800x800.jpg'
    if 'cromada-chery' in url or 'llavero-3' in url or 'chery-y-omoda.jpg' in url: return 'https://tiendaeme.com.uy/wp-content/uploads/2025/10/Funda-Protectora-de-Cuero-con-Metal-para-Llave-de-Autos-Chery-y-Omoda-800x800.jpg'
    if 'fibra-carbono-vw' in url or 'volkswagen-2' in url: return 'https://tiendaeme.com.uy/wp-content/uploads/2025/07/Funda-Protectora-de-Fibra-de-Carbono-para-Llave-de-Volkswagen-800x800.jpg'
    if 'cuero-vw' in url or 'volkswagen.jpg' in url: return 'https://tiendaeme.com.uy/wp-content/uploads/2025/09/Funda-Protectora-de-Cuero-con-Metal-para-Llave-de-Autos-Volkswagen-800x800.jpg'
    if 'cuero-chery' in url: return 'https://tiendaeme.com.uy/wp-content/uploads/2026/02/Funda-Protectora-de-Cuero-con-Metal-para-Llave-de-Autos-Chery-y-Omoda-gris.webp'
    if 'tpu-chery' in url or 'autos-chery-y-omoda-azul' in url: return 'https://tiendaeme.com.uy/wp-content/uploads/2025/05/cropped-tienda-eme-1.webp'
    if 'byd-cuero' in url or 'autos-byd.jpg' in url: return 'https://tiendaeme.com.uy/wp-content/uploads/2025/08/Funda-Protectora-de-Cuero-con-Metal-para-Llave-de-Autos-BYD-800x800.jpg'
    if 'tapones-rojos' in url or 'sq000' in url: return 'https://tiendaeme.com.uy/wp-content/uploads/2025/06/Aros-Bloque-800x800.webp'
    if 'termico' in url or 'bolsa-termica' in url or 'aislante' in url: return 'https://tiendaeme.com.uy/wp-content/uploads/2026/04/Bolsa-Termica-Reutilizable-Para-Compras-Mantiene-Frio-y-Calor-800x800.jpg'
    if 'reloj' in url or 'img_4259' in url or 'sigma' in url: return 'https://tiendaeme.com.uy/wp-content/uploads/2025/05/cropped-tienda-eme-1.webp'
    if 'silicona' in url or 'img_5143' in url: return 'https://tiendaeme.com.uy/wp-content/uploads/2025/08/Funda-de-Silicona-para-Llave-de-Autos-Volskswagen.webp'
    if 'carlinkit' in url: return 'https://tiendaeme.com.uy/wp-content/uploads/2025/07/Adaptador-Carplay-Android-Auto-Inalambrico-Carlinkit-Mini-Ultra-6-800x800.webp'
    return random.choice(working_images)

pattern = re.compile(r'https://tiendaeme\.com\.uy/wp-content/uploads/[a-zA-Z0-9\/\-\.]+(?:jpg|jpeg|png|webp|avif)')
index_html = pattern.sub(map_url, index_html)
products_data = pattern.sub(map_url, products_data)

# Fix buttons in index.html
def map_buttons(match):
    full_string = index_html[:match.start()]
    text_before = full_string[-300:]
    if 'Cromada Chery' in text_before: return '<button class="btn-add-cart compact-btn" data-product-id="4870">Agregar</button>'
    if 'Fibra Carbono VW' in text_before: return '<button class="btn-add-cart compact-btn" data-product-id="4773">Agregar</button>'
    if 'Cuero VW' in text_before: return '<button class="btn-add-cart compact-btn" data-product-id="4761">Agregar</button>'
    if 'Cuero Chery' in text_before: return '<button class="btn-add-cart compact-btn" data-product-id="4745">Agregar</button>'
    if 'TPU Chery' in text_before: return '<button class="btn-add-cart compact-btn" data-product-id="4683">Agregar</button>'
    if 'Cuero BYD' in text_before: return '<button class="btn-add-cart compact-btn" data-product-id="4700">Agregar</button>'
    return '<button class="btn-add-cart compact-btn" data-product-id="4870">Agregar</button>'

index_html = re.sub(r'<button class="btn-add-cart compact-btn">Agregar</button>', map_buttons, index_html)

with open(index_path, 'w', encoding='utf-8') as f:
    f.write(index_html)

with open(products_path, 'w', encoding='utf-8') as f:
    f.write(products_data)

print("Done python script")
