<?php
header('Content-Type: application/json');

// IMPORTANTE: PEGA AQUÍ TU API KEY
$apiKey = '2b7bc92a8facaa376f2d24462f7d5f44098e0673fe5c1b3bc04f065bf39a5bc727979cba651a67e05f808b556a1f35ae';

if ($_SERVER['REQUEST_METHOD'] !== 'POST' || empty($_FILES['image_file'])) {
    http_response_code(400);
    echo json_encode(['error' => 'No se recibió ninguna imagen.']);
    exit;
}

$file = $_FILES['image_file'];
$filePath = $file['tmp_name'];
$fileName = $file['name'];
$fileType = $file['type'];

// Preparar la petición a la API de ClipDrop
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://clipdrop-api.co/remove-background/v1');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);

// Crear el cuerpo de la petición con el archivo
$postFields = [
    'image_file' => new CURLFile($filePath, $fileType, $fileName),
];
curl_setopt($ch, CURLOPT_POSTFIELDS, $postFields);

// Agregar la API Key en los headers
$headers = [
    'x-api-key: ' . $apiKey,
];
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

// Ejecutar y obtener resultado
$response = curl_exec($ch);
$httpcode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);

// Si la API funcionó (código 200), devolvemos la imagen
if ($httpcode == 200) {
    // Convertir la imagen recibida a base64 para enviarla al navegador
    $base64 = 'data:image/png;base64,' . base64_encode($response);
    echo json_encode(['success' => true, 'image_base64' => $base64]);
} else {
    // Si hubo un error en la API
    http_response_code($httpcode);
    echo json_encode(['error' => 'La API de IA falló.', 'details' => json_decode($response)]);
}
?>
