<?php
// test-utm.php
session_start();

if (!defined('BASE_PATH')) {
    define('BASE_PATH', dirname(__FILE__));
}

require_once 'includes/config.php';

// Carrega funções UTM
if (file_exists('includes/utm-functions.php')) {
    require_once 'includes/utm-functions.php';
}
?>
<!DOCTYPE html>
<html lang="pt-BR">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Teste UTM - Pixel IntegraOn</title>
    <style>
        body { font-family: Arial, sans-serif; max-width: 800px; margin: 50px auto; padding: 20px; }
        .success { color: green; }
        .error { color: red; }
        .info { color: blue; }
        .utm-box { background: #f5f5f5; padding: 15px; border-radius: 5px; margin: 20px 0; }
        .test-links { margin: 20px 0; }
        .test-links a { display: block; margin: 10px 0; padding: 10px; background: #007bff; color: white; text-decoration: none; border-radius: 5px; }
    </style>
</head>
<body>
    <h1>🧪 Teste de UTM Parameters</h1>
    
    <?php
    // Processa UTM se existir
    if (!empty($_GET['utm_campaign'])) {
        $captured = saveUtmParamsToSession();
        if ($captured) {
            echo "<div class='success'>✅ UTM Parameters capturados com sucesso!</div>";
        } else {
            echo "<div class='error'>❌ Erro ao capturar UTM Parameters</div>";
        }
    }
    
    // Mostra UTM da URL atual
    $currentUtm = [];
    foreach (['utm_campaign', 'utm_source', 'utm_medium', 'utm_term', 'utm_content'] as $key) {
        if (isset($_GET[$key])) {
            $currentUtm[$key] = $_GET[$key];
        }
    }
    
    if (!empty($currentUtm)) {
        echo "<div class='utm-box'>";
        echo "<h3>📊 UTM da URL Atual:</h3>";
        foreach ($currentUtm as $key => $value) {
            echo "<strong>$key:</strong> " . htmlspecialchars($value) . "<br>";
        }
        echo "</div>";
    }
    
    // Mostra UTM da sessão
    $sessionUtm = getUtmParamsFromSession();
    if (!empty($sessionUtm)) {
        echo "<div class='utm-box'>";
        echo "<h3>💾 UTM da Sessão:</h3>";
        foreach ($sessionUtm as $key => $value) {
            if (!empty($value)) {
                echo "<strong>$key:</strong> " . htmlspecialchars($value) . "<br>";
            }
        }
        echo "<p><strong>Válido:</strong> " . (areUtmParamsValid() ? 'Sim' : 'Não') . "</p>";
        echo "<p><strong>Timestamp:</strong> " . ($_SESSION['utm_timestamp'] ?? 'N/A') . "</p>";
        echo "</div>";
    }
    
    // Teste do Pixel
    if (isset($pixelIntegraOn) && is_object($pixelIntegraOn)) {
        echo "<div class='success'>✅ Objeto Pixel IntegraOn disponível</div>";
        
        if (!empty($sessionUtm)) {
            echo "<div class='info'>🔄 Testando envio para API...</div>";
            
            try {
                $testUrl = '?' . http_build_query($sessionUtm);
                $result = $pixelIntegraOn->sendPurchaseEvent($testUrl);
                
                if ($result !== false) {
                    echo "<div class='success'>✅ API respondeu: " . json_encode($result) . "</div>";
                } else {
                    echo "<div class='error'>❌ API retornou false</div>";
                }
            } catch (Exception $e) {
                echo "<div class='error'>❌ Erro na API: " . $e->getMessage() . "</div>";
            }
        }
    } else {
        echo "<div class='error'>❌ Objeto Pixel IntegraOn não disponível</div>";
    }
    ?>
    
    <div class="test-links">
        <h3>🔗 Links de Teste:</h3>
        <a href="?utm_campaign=teste_facebook&utm_source=facebook&utm_medium=cpc&utm_term=curso&utm_content=anuncio1">
            🔵 Teste Facebook Ads
        </a>
        <a href="?utm_campaign=teste_instagram&utm_source=instagram&utm_medium=social&utm_term=transformacao&utm_content=stories">
            📷 Teste Instagram
        </a>
        <a href="?utm_campaign=teste_google&utm_source=google&utm_medium=cpc&utm_term=curso+gratuito&utm_content=anuncio_search">
            🔍 Teste Google Ads
        </a>
        <a href="?utm_campaign=teste_email&utm_source=email&utm_medium=newsletter&utm_term=subscribers&utm_content=cta_button">
            📧 Teste Email Marketing
        </a>
        <a href="test-utm.php">
            🔄 Limpar UTM (página sem parâmetros)
        </a>
    </div>
    
    <div class="utm-box">
        <h3>📝 Como Usar:</h3>
        <ol>
            <li>Clique em um dos links de teste acima</li>
            <li>Verifique se os UTM parameters foram capturados</li>
            <li>Navegue para outras páginas do site</li>
            <li>Os UTM parameters devem persistir na sessão por 24h</li>
            <li>O pixel deve enviar os dados para a API IntegraOn automaticamente</li>
        </ol>
        
        <h4>🔍 Debug JavaScript:</h4>
        <p>Abra o console do navegador (F12) para ver logs de captura de UTM e envio do pixel.</p>
    </div>
    
    <?php
    // Inclui script de captura
    generateUtmCaptureScript();
    
    // Debug se habilitado
    if (defined('DEBUG') && DEBUG) {
        debugUtmParams();
    }
    ?>
    
</body>
</html>