<?php
/**
 * Script de teste para verificar envio de email
 * Acesse este arquivo no navegador para testar
 */

require_once 'config.php';
require_once 'smtp_email.php';

// Verificar se é uma requisição POST (teste real) ou GET (página de teste)
if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['testar_email'])) {
    $email_destino = $_POST['email_destino'] ?? EMAIL_TO;
    
    $subject = 'Teste de Email - GIMAK';
    $message_html = "
    <html>
    <body style='font-family: Arial, sans-serif; padding: 20px;'>
        <h2 style='color: #FF6B35;'>✅ Teste de Email</h2>
        <p>Se você está recebendo este email, significa que o sistema de envio está funcionando!</p>
        <p><strong>Data/Hora:</strong> " . date('d/m/Y H:i:s') . "</p>
        <p><strong>Servidor:</strong> " . $_SERVER['SERVER_NAME'] . "</p>
        <hr>
        <p style='color: #666; font-size: 12px;'>Este é um email de teste do sistema GIMAK.</p>
    </body>
    </html>
    ";
    
    $resultado = sendEmailSMTP($email_destino, $subject, $message_html);
    
    header('Content-Type: application/json');
    echo json_encode([
        'sucesso' => $resultado,
        'mensagem' => $resultado ? '✅ Email enviado! Verifique sua caixa de entrada (e spam).' : '❌ Erro ao enviar email. Verifique os logs.',
        'destino' => $email_destino
    ]);
    exit;
}

// Página de teste
?>
<!DOCTYPE html>
<html lang="pt-BR">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Teste de Email - GIMAK</title>
    <style>
        * { margin: 0; padding: 0; box-sizing: border-box; }
        body {
            font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            min-height: 100vh;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 20px;
        }
        .container {
            background: white;
            border-radius: 16px;
            box-shadow: 0 20px 60px rgba(0,0,0,0.3);
            max-width: 600px;
            width: 100%;
            padding: 40px;
        }
        h1 { color: #333; margin-bottom: 10px; }
        .subtitle { color: #666; margin-bottom: 30px; }
        .status-box {
            background: #f5f5f5;
            border-radius: 8px;
            padding: 20px;
            margin-bottom: 30px;
        }
        .status-item {
            display: flex;
            align-items: center;
            margin-bottom: 15px;
            font-size: 14px;
        }
        .status-icon {
            width: 24px;
            height: 24px;
            margin-right: 12px;
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 50%;
            font-weight: bold;
        }
        .status-icon.ok { background: #10b981; color: white; }
        .status-icon.error { background: #ef4444; color: white; }
        .status-icon.warning { background: #f59e0b; color: white; }
        .form-group {
            margin: 20px 0;
        }
        label {
            display: block;
            margin-bottom: 8px;
            font-weight: 600;
            color: #333;
        }
        input[type="email"] {
            width: 100%;
            padding: 12px;
            border: 2px solid #e5e7eb;
            border-radius: 8px;
            font-size: 14px;
        }
        input[type="email"]:focus {
            outline: none;
            border-color: #667eea;
        }
        .btn {
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            color: white;
            border: none;
            padding: 14px 28px;
            border-radius: 8px;
            font-size: 16px;
            font-weight: 600;
            cursor: pointer;
            width: 100%;
            transition: transform 0.2s;
        }
        .btn:hover { transform: translateY(-2px); }
        .result {
            margin-top: 20px;
            padding: 15px;
            border-radius: 8px;
            display: none;
        }
        .result.success {
            background: #d1fae5;
            color: #065f46;
            border: 1px solid #10b981;
        }
        .result.error {
            background: #fee2e2;
            color: #991b1b;
            border: 1px solid #ef4444;
        }
        .info-box {
            background: #eff6ff;
            border-left: 4px solid #3b82f6;
            padding: 15px;
            border-radius: 4px;
            margin-top: 20px;
            font-size: 14px;
            color: #1e40af;
        }
    </style>
</head>
<body>
    <div class="container">
        <h1>📧 Teste de Email</h1>
        <p class="subtitle">Verificar se o sistema de email está funcionando</p>
        
        <div class="status-box">
            <div class="status-item">
                <div class="status-icon <?php echo defined('EMAIL_TO') ? 'ok' : 'error'; ?>">
                    <?php echo defined('EMAIL_TO') ? '✓' : '✗'; ?>
                </div>
                <div>
                    <strong>Email Destino:</strong><br>
                    <span style="color: #666;"><?php echo defined('EMAIL_TO') ? htmlspecialchars(EMAIL_TO) : 'Não configurado'; ?></span>
                </div>
            </div>
            
            <div class="status-item">
                <div class="status-icon <?php echo (defined('SMTP_HOST') && defined('SMTP_USER')) ? 'ok' : 'warning'; ?>">
                    <?php echo (defined('SMTP_HOST') && defined('SMTP_USER')) ? '✓' : '!'; ?>
                </div>
                <div>
                    <strong>SMTP Configurado:</strong><br>
                    <span style="color: #666;">
                        <?php 
                        if (defined('SMTP_HOST') && defined('SMTP_USER')) {
                            echo '✅ Sim (' . SMTP_HOST . ')';
                        } else {
                            echo '⚠️ Não (usando mail() padrão)';
                        }
                        ?>
                    </span>
                </div>
            </div>
        </div>
        
        <form id="testForm">
            <div class="form-group">
                <label for="email_destino">Email para teste:</label>
                <input type="email" id="email_destino" name="email_destino" 
                       value="<?php echo defined('EMAIL_TO') ? htmlspecialchars(EMAIL_TO) : ''; ?>" 
                       required>
            </div>
            <button type="submit" class="btn">🚀 Enviar Email de Teste</button>
            <div id="resultado"></div>
        </form>
        
        <?php if (!defined('SMTP_HOST') || !defined('SMTP_USER')): ?>
            <div class="info-box">
                <strong>💡 Dica:</strong> Para melhorar a entrega de emails, configure SMTP do Gmail.<br><br>
                Veja o arquivo: <code>CONFIGURAR_EMAIL_GMAIL.md</code>
            </div>
        <?php endif; ?>
    </div>
    
    <script>
        document.getElementById('testForm').addEventListener('submit', function(e) {
            e.preventDefault();
            const btn = event.target.querySelector('button');
            const resultado = document.getElementById('resultado');
            const email = document.getElementById('email_destino').value;
            
            btn.disabled = true;
            btn.textContent = '⏳ Enviando...';
            resultado.style.display = 'none';
            
            const formData = new FormData();
            formData.append('testar_email', '1');
            formData.append('email_destino', email);
            
            fetch('testar_email.php', {
                method: 'POST',
                body: formData
            })
            .then(response => response.json())
            .then(data => {
                resultado.style.display = 'block';
                resultado.className = 'result ' + (data.sucesso ? 'success' : 'error');
                resultado.innerHTML = '<strong>' + (data.sucesso ? '✅ Sucesso!' : '❌ Erro') + '</strong><br>' + data.mensagem;
                
                if (data.sucesso) {
                    resultado.innerHTML += '<br><br>📧 Verifique a caixa de entrada e a pasta de <strong>SPAM</strong> do email: ' + data.destino;
                }
                
                btn.disabled = false;
                btn.textContent = '🚀 Enviar Email de Teste';
            })
            .catch(error => {
                resultado.style.display = 'block';
                resultado.className = 'result error';
                resultado.innerHTML = '<strong>❌ Erro</strong><br>Erro ao conectar: ' + error.message;
                btn.disabled = false;
                btn.textContent = '🚀 Enviar Email de Teste';
            });
        });
    </script>
</body>
</html>

