<?php
header('Content-Type: application/json; charset=utf-8');
require_once __DIR__ . '/../config/db.php';

try {
    $input = json_decode(file_get_contents('php://input'), true);

    if (!$input || empty($input['nombre'])) {
        throw new Exception('El nombre del lugar es obligatorio');
    }

    $nombre = trim($input['nombre']);
    $pdo = getConnection();

    // Verificar si ya existe (case insensitive y sin espacios extra)
    $stmtCheck = $pdo->prepare("SELECT id, nombre FROM lugarcompra WHERE UPPER(TRIM(nombre)) = UPPER(TRIM(:nombre)) LIMIT 1");
    $stmtCheck->execute([':nombre' => $nombre]);
    $existente = $stmtCheck->fetch();

    if ($existente) {
        echo json_encode([
            'success' => true,
            'message' => 'El lugar ya existe en el catálogo',
            'id' => $existente['id'],
            'nombre' => $existente['nombre']
        ]);
        exit;
    }

    $stmtInsert = $pdo->prepare("INSERT INTO lugarcompra (nombre) VALUES (:nombre)");
    $stmtInsert->execute([':nombre' => $nombre]);
    $id = $pdo->lastInsertId();

    echo json_encode([
        'success' => true,
        'message' => 'Lugar de compra creado exitosamente',
        'id' => $id,
        'nombre' => $nombre
    ]);

} catch (Exception $e) {
    http_response_code(500);
    echo json_encode(['success' => false, 'error' => $e->getMessage()]);
}
