<?php
/**
 * TechShop Perú - API Live Search Suggestion
 * 
 * Devuelve sugerencias de productos en formato JSON al escribir en el buscador.
 */

header('Content-Type: application/json; charset=utf-8');

define('SECURE_ACCESS', true);
require_once __DIR__ . '/../includes/config.php';
require_once __DIR__ . '/../includes/database.php';
require_once __DIR__ . '/../includes/functions.php';

$query = trim($_GET['q'] ?? '');

if (mb_strlen($query) < 2) {
    echo json_encode(['success' => true, 'results' => []]);
    exit;
}

try {
    $db = db();
    $stmt = $db->prepare('
        SELECT p.id, p.nombre, p.slug, p.precio, p.precio_oferta, p.imagen_principal, c.nombre AS categoria
        FROM productos p
        JOIN categorias c ON p.categoria_id = c.id
        WHERE p.activo = 1 AND (p.nombre LIKE ? OR p.descripcion_corta LIKE ? OR c.nombre LIKE ?)
        ORDER BY p.destacado DESC, p.nombre ASC
        LIMIT 6
    ');
    
    $searchTerm = '%' . $query . '%';
    $stmt->execute([$searchTerm, $searchTerm, $searchTerm]);
    $items = $stmt->fetchAll();

    $results = [];
    foreach ($items as $item) {
        $precioFinal = precio_final($item);
            
        $imagen = !empty($item['imagen_principal']) 
            ? UPLOADS_URL . '/products/' . $item['imagen_principal']
            : ASSETS_URL . '/images/placeholder-product.svg';

        $results[] = [
            'id' => $item['id'],
            'nombre' => $item['nombre'],
            'categoria' => $item['categoria'],
            'precio_formateado' => format_precio($precioFinal),
            'imagen' => $imagen,
            'url' => url('pages/detalle.php?slug=' . $item['slug'])
        ];
    }

    echo json_encode(['success' => true, 'results' => $results]);
} catch (PDOException $e) {
    echo json_encode(['success' => false, 'message' => 'Error al buscar productos', 'results' => []]);
}
