<?php
/**
 * Dashboard de Pruebas PagoPar - Todas las URLs disponibles
 */
?>
<!DOCTYPE html>
<html>
<head>
    <title>🎯 Dashboard Webhooks PagoPar</title>
    <style>
        body { font-family: Arial, sans-serif; max-width: 1200px; margin: 0 auto; padding: 20px; background: #f5f5f5; }
        .webhook-card { background: white; margin: 15px 0; padding: 20px; border-radius: 8px; box-shadow: 0 2px 4px rgba(0,0,0,0.1); }
        .url { background: #e8f4f8; padding: 12px; font-family: monospace; border-radius: 4px; margin: 10px 0; word-break: break-all; }
        .strategy { background: #fff3cd; padding: 8px; border-radius: 4px; margin: 5px 0; }
        .test-btn { background: #007bff; color: white; padding: 10px 20px; border: none; border-radius: 4px; cursor: pointer; margin: 5px; }
        .test-btn:hover { background: #0056b3; }
        .results { background: #f8f9fa; padding: 10px; border-radius: 4px; margin-top: 10px; }
        h1 { text-align: center; color: #333; }
        .priority { border-left: 4px solid #28a745; }
        .secondary { border-left: 4px solid #ffc107; }
        .experimental { border-left: 4px solid #6f42c1; }
    </style>
</head>
<body>
    <h1>🎯 Dashboard Webhooks PagoPar</h1>
    <p style="text-align: center; background: #d4edda; padding: 15px; border-radius: 8px;">
        <strong>🚨 INSTRUCCIONES:</strong> Prueba estas URLs <strong>UNA POR UNA</strong> en tu panel PagoPar. 
        Empieza por las marcadas como PRIORIDAD ALTA.
    </p>

    <!-- WEBHOOK 1 - PRIORIDAD ALTA -->
    <div class="webhook-card priority">
        <h2>🥇 WEBHOOK 1 - Ultra Debug (RECOMENDADO)</h2>
        <div class="strategy">
            <strong>Estrategia:</strong> Múltiples estrategias + logging completo para diagnóstico
        </div>
        <div class="url">https://jkeas.com.py/webhook_debug_ultra.php</div>
        <button class="test-btn" onclick="testWebhook('webhook_debug_ultra.php', 1)">🔍 Probar Webhook 1</button>
        <div id="result-1" class="results" style="display: none;"></div>
        <p><strong>✅ Por qué probar primero:</strong> Genera logs ultra-detallados que nos ayudarán a entender exactamente qué está pasando.</p>
    </div>

    <!-- WEBHOOK 2 - PRIORIDAD ALTA -->
    <div class="webhook-card priority">
        <h2>🥈 WEBHOOK 2 - Documentación Oficial</h2>
        <div class="strategy">
            <strong>Estrategia:</strong> Implementación exacta según documentación PagoPar
        </div>
        <div class="url">https://jkeas.com.py/webhook_validacion_pagopar.php</div>
        <button class="test-btn" onclick="testWebhook('webhook_validacion_pagopar.php', 2)">📋 Probar Webhook 2</button>
        <div id="result-2" class="results" style="display: none;"></div>
        <p><strong>✅ Por qué probar:</strong> Sigue al pie de la letra la documentación oficial de PagoPar.</p>
    </div>

    <!-- WEBHOOK 3 - PRIORIDAD MEDIA -->
    <div class="webhook-card secondary">
        <h2>🥉 WEBHOOK 3 - Echo Completo</h2>
        <div class="strategy">
            <strong>Estrategia:</strong> Devuelve exactamente lo que recibe pero con pagado=true
        </div>
        <div class="url">https://jkeas.com.py/webhook_echo_completo.php</div>
        <button class="test-btn" onclick="testWebhook('webhook_echo_completo.php', 3)">🔄 Probar Webhook 3</button>
        <div id="result-3" class="results" style="display: none;"></div>
        <p><strong>🤔 Teoría:</strong> Quizás PagoPar espera recibir de vuelta la estructura completa original.</p>
    </div>

    <!-- WEBHOOK 4 - PRIORIDAD MEDIA -->
    <div class="webhook-card secondary">
        <h2>🛡️ WEBHOOK 4 - Headers Especiales</h2>
        <div class="strategy">
            <strong>Estrategia:</strong> Respuesta estándar + headers HTTP especiales
        </div>
        <div class="url">https://jkeas.com.py/webhook_headers.php</div>
        <button class="test-btn" onclick="testWebhook('webhook_headers.php', 4)">📡 Probar Webhook 4</button>
        <div id="result-4" class="results" style="display: none;"></div>
        <p><strong>🤔 Teoría:</strong> PagoPar podría requerir headers HTTP específicos para validación.</p>
    </div>

    <!-- WEBHOOK 5 - EXPERIMENTAL -->
    <div class="webhook-card experimental">
        <h2>⚡ WEBHOOK 5 - Mínimo Absoluto</h2>
        <div class="strategy">
            <strong>Estrategia:</strong> Respuesta mínima válida siempre exitosa
        </div>
        <div class="url">https://jkeas.com.py/webhook_minimo.php</div>
        <button class="test-btn" onclick="testWebhook('webhook_minimo.php', 5)">⚡ Probar Webhook 5</button>
        <div id="result-5" class="results" style="display: none;"></div>
        <p><strong>🧪 Experimental:</strong> Para descartar problemas con los datos específicos.</p>
    </div>

    <div style="background: #fff3cd; padding: 20px; border-radius: 8px; margin-top: 30px;">
        <h2>📊 Plan de Acción:</h2>
        <ol>
            <li><strong>Prueba WEBHOOK 1</strong> (Ultra Debug) en tu panel PagoPar</li>
            <li><strong>Ejecuta la validación</strong> Paso 2</li>
            <li><strong>Revisa los logs</strong> en la carpeta <code>logs/</code></li>
            <li><strong>Si no pasa,</strong> prueba WEBHOOK 2</li>
            <li><strong>Repite</strong> hasta encontrar el que funcione</li>
        </ol>
        <p><strong>💡 Tip:</strong> Los logs del WEBHOOK 1 nos darán información valiosa sin importar si pasa o no la validación.</p>
    </div>

    <script>
        function testWebhook(filename, num) {
            const resultDiv = document.getElementById('result-' + num);
            resultDiv.style.display = 'block';
            resultDiv.innerHTML = '⏳ Probando webhook...';
            
            // Datos de prueba similares a los que PagoPar envía
            const testData = {
                "respuesta": true,
                "resultado": [{
                    "pagado": false,
                    "numero_comprobante_interno": "TEST-" + Date.now(),
                    "ultimo_mensaje_error": null,
                    "forma_pago": "Test",
                    "fecha_pago": null,
                    "monto": "100000.00",
                    "fecha_maxima_pago": new Date(Date.now() + 7*24*60*60*1000).toISOString().slice(0, 19).replace('T', ' '),
                    "hash_pedido": "test_" + Math.random().toString(36).substr(2, 32),
                    "numero_pedido": "TEST-" + Date.now(),
                    "cancelado": false,
                    "forma_pago_identificador": "1",
                    "token": "test_token_" + Math.random().toString(36).substr(2, 16)
                }]
            };
            
            fetch('https://jkeas.com.py/' + filename, {
                method: 'POST',
                headers: {
                    'Content-Type': 'application/json',
                    'User-Agent': 'PagoPar-Test/Dashboard'
                },
                body: JSON.stringify(testData)
            })
            .then(response => response.text())
            .then(data => {
                resultDiv.innerHTML = `
                    <strong>✅ Respuesta recibida:</strong><br>
                    <pre style="background: #f8f9fa; padding: 10px; border-radius: 4px; overflow-x: auto;">${data}</pre>
                    <p><strong>🎯 Próximo paso:</strong> Si ves una respuesta JSON válida, prueba esta URL en tu panel PagoPar.</p>
                `;
            })
            .catch(error => {
                resultDiv.innerHTML = `
                    <strong>❌ Error:</strong> ${error}<br>
                    <p>Verifica que el servidor esté funcionando y la URL sea accesible.</p>
                `;
            });
        }
    </script>
</body>
</html>