<?php
/**
 * SOLUCIÓN FINAL SIMPLE
 * Una sola página que hace TODO automáticamente
 */

require_once 'pagopar_config.php';

echo "<!DOCTYPE html>
<html>
<head>
    <meta charset='UTF-8'>
    <title>🎯 SOLUCIÓN FINAL</title>
    <style>
        body { font-family: Arial, sans-serif; max-width: 600px; margin: 50px auto; padding: 30px; text-align: center; }
        .big-button { background: #28a745; color: white; padding: 30px 50px; border: none; border-radius: 15px; font-size: 24px; font-weight: bold; cursor: pointer; margin: 20px; box-shadow: 0 5px 15px rgba(0,0,0,0.3); }
        .big-button:hover { background: #218838; transform: translateY(-2px); }
        .result { background: #f8f9fa; padding: 30px; border-radius: 15px; margin: 30px 0; text-align: left; }
        .success { background: #d4edda; color: #155724; }
        .error { background: #f8d7da; color: #721c24; }
        .info { background: #d1ecf1; color: #0c5460; }
        h1 { color: #dc3545; font-size: 36px; margin-bottom: 30px; }
        .simple { font-size: 18px; line-height: 1.6; }
    </style>
</head>
<body>";

echo "<h1>🔥 ME CANSÉ - SOLUCIÓN FINAL</h1>";

if (!isset($_POST['hacer_todo'])) {
    echo "<div class='simple'>";
    echo "<p><strong>Entiendo tu frustración.</strong></p>";
    echo "<p>Vamos a hacer TODO de una vez:</p>";
    echo "<ul style='text-align: left; display: inline-block;'>";
    echo "<li>✅ Probar tokens actuales</li>";
    echo "<li>✅ Crear pedido con API que funcione</li>";  
    echo "<li>✅ Probar consulta Paso 3</li>";
    echo "<li>✅ Darte el número final para PagoPar</li>";
    echo "</ul>";
    echo "</div>";
    
    echo "<form method='POST'>";
    echo "<input type='hidden' name='hacer_todo' value='1'>";
    echo "<button type='submit' class='big-button'>🚀 HACER TODO AHORA</button>";
    echo "</form>";
    
    echo "<p style='color: #666; font-size: 14px;'>Un solo clic. Se acabaron las complicaciones.</p>";
    
} else {
    echo "<div class='result info'>";
    echo "<h3>🚀 EJECUTANDO TODO AUTOMÁTICAMENTE...</h3>";
    echo "</div>";
    
    $exito_final = false;
    $numero_pedido_final = null;
    $api_funcional = null;
    
    // PASO 1: Probar APIs hasta encontrar una que funcione
    echo "<div class='result'>";
    echo "<h4>🔍 PASO 1: Encontrar API funcional</h4>";
    
    $apis = [
        ['url' => 'https://api.pagopar.com/api/comercios/checkout', 'formato' => 'checkout'],
        ['url' => 'https://api.pagopar.com/api/comercios/generar', 'formato' => 'generar'],
        ['url' => 'https://api.pagopar.com/api/comercios/pedido', 'formato' => 'simple']
    ];
    
    foreach ($apis as $api) {
        echo "<p>Probando: {$api['url']}...</p>";
        
        if ($api['formato'] === 'checkout') {
            $data = [
                'public_key' => $public_key,
                'private_key' => $private_key,
                'amount' => 50000,
                'currency' => 'PYG',
                'description' => 'PEDIDO FINAL DEFINITIVO',
                'custom' => 'FINAL_' . date('His'),
                'urlreturn' => $return_url,
                'urlnotify' => $webhook_url,
                'buyer_name' => 'Cliente Final',
                'buyer_email' => 'final@paso3.com',
                'buyer_phone' => '0981234567'
            ];
        } elseif ($api['formato'] === 'generar') {
            $data = [
                'private_key' => $private_key,
                'public_key' => $public_key,
                'concepto' => 'PEDIDO FINAL DEFINITIVO',
                'monto' => 50000,
                'moneda' => 'PYG',
                'webhook_url' => $webhook_url
            ];
        } else {
            $data = [
                'public_key' => $public_key,
                'private_key' => $private_key,
                'monto' => 50000,
                'concepto' => 'PEDIDO FINAL DEFINITIVO',
                'moneda' => 'PYG'
            ];
        }
        
        $curl = curl_init();
        curl_setopt_array($curl, [
            CURLOPT_URL => $api['url'],
            CURLOPT_RETURNTRANSFER => true,
            CURLOPT_POST => true,
            CURLOPT_POSTFIELDS => json_encode($data),
            CURLOPT_HTTPHEADER => ['Content-Type: application/json'],
            CURLOPT_SSL_VERIFYPEER => true,
            CURLOPT_TIMEOUT => 15
        ]);
        
        $response = curl_exec($curl);
        $http_code = curl_getinfo($curl, CURLINFO_HTTP_CODE);
        curl_close($curl);
        
        if ($http_code === 200) {
            $result = json_decode($response, true);
            
            if (isset($result['process']) && $result['process'] === 'success') {
                $numero_pedido_final = $result['response']['pedido_numero'];
                $api_funcional = $api['url'];
                $exito_final = true;
                echo "<p><strong>✅ ¡ÉXITO! Pedido #$numero_pedido_final creado</strong></p>";
                break;
            } elseif (isset($result['respuesta']) && $result['respuesta'] === true) {
                $numero_pedido_final = $result['numero_pedido'] ?? 'SUCCESS_API';
                $api_funcional = $api['url'];
                $exito_final = true;
                echo "<p><strong>✅ ¡ÉXITO! Pedido #$numero_pedido_final creado</strong></p>";
                break;
            }
        }
        
        echo "<p>❌ Falló con HTTP $http_code</p>";
    }
    echo "</div>";
    
    if ($exito_final) {
        // PASO 2: Probar consulta
        echo "<div class='result'>";
        echo "<h4>🔍 PASO 2: Probar consulta Paso 3</h4>";
        
        sleep(2);
        
        $consulta_data = [
            'public_key' => $public_key,
            'private_key' => $private_key,
            'pedido_numero' => $numero_pedido_final
        ];
        
        $curl = curl_init();
        curl_setopt_array($curl, [
            CURLOPT_URL => 'https://api.pagopar.com/api/comercios/pedido',
            CURLOPT_RETURNTRANSFER => true,
            CURLOPT_POST => true,
            CURLOPT_POSTFIELDS => json_encode($consulta_data),
            CURLOPT_HTTPHEADER => ['Content-Type: application/json'],
            CURLOPT_SSL_VERIFYPEER => true,
            CURLOPT_TIMEOUT => 15
        ]);
        
        $consulta_response = curl_exec($curl);
        $consulta_http_code = curl_getinfo($curl, CURLINFO_HTTP_CODE);
        curl_close($curl);
        
        if ($consulta_http_code === 200) {
            $consulta_result = json_decode($consulta_response, true);
            if (isset($consulta_result['respuesta']) && $consulta_result['respuesta'] === true) {
                echo "<p><strong>✅ ¡CONSULTA EXITOSA! Paso 3 funciona</strong></p>";
                
                echo "</div>";
                
                // RESULTADO FINAL
                echo "<div class='result success'>";
                echo "<h2>🏆 ¡TERMINADO!</h2>";
                echo "<h3>Información para PagoPar:</h3>";
                echo "<p><strong style='font-size: 20px;'>Pedido nuevo: #$numero_pedido_final</strong></p>";
                echo "<p><strong>API funcional:</strong> $api_funcional</p>";
                echo "<p><strong>Paso 3:</strong> ✅ Verificado y funcionando</p>";
                echo "<p><strong>Estado:</strong> Listo para producción</p>";
                echo "</div>";
                
                echo "<div class='result info'>";
                echo "<h3>📞 Mensaje para PagoPar:</h3>";
                echo "<p style='background: white; padding: 15px; border-radius: 8px; border: 2px solid #007bff;'>";
                echo "<em>\"Hola, he creado el pedido #$numero_pedido_final con los tokens actualizados. ";
                echo "El Paso 3 (consulta) está funcionando perfectamente. ";
                echo "Por favor actualicen la validación para usar este nuevo pedido y habiliten el pase a producción. Gracias.\"</em>";
                echo "</p>";
                echo "</div>";
                
            } else {
                echo "<p>⚠️ Consulta completada pero respuesta inesperada</p>";
                echo "<p>Respuesta: $consulta_response</p>";
                echo "</div>";
            }
        } else {
            echo "<p>❌ Error en consulta: HTTP $consulta_http_code</p>";
            echo "</div>";
        }
        
    } else {
        echo "<div class='result error'>";
        echo "<h3>❌ NO SE PUDO CREAR PEDIDO</h3>";
        echo "<p>Ninguna API funcionó. Posibles causas:</p>";
        echo "<ul>";
        echo "<li>Tokens inválidos (necesitas regenerarlos)</li>";
        echo "<li>Problema en el servicio de PagoPar</li>";
        echo "<li>Configuración de cuenta incorrecta</li>";
        echo "</ul>";
        echo "<p><strong>Acción:</strong> Regenera los tokens en PagoPar y vuelve a intentar</p>";
        echo "</div>";
    }
}

echo "<div style='margin-top: 40px; padding: 20px; background: #f8f9fa; border-radius: 10px;'>";
echo "<p><strong>¿Sigues teniendo problemas?</strong></p>";
echo "<p>Contacta directamente al soporte de PagoPar y diles:</p>";
echo "<p><em>\"Necesito ayuda para completar la validación del Paso 3. Los tokens están configurados pero las APIs no responden correctamente.\"</em></p>";
echo "</div>";

echo "</body></html>";
?>