<?php
/**
 * VERIFICAR LOGS DA API DE GESTORES
 * Para monitorar se o app está usando a nova API
 */

header('Content-Type: text/html; charset=utf-8');

echo "<!DOCTYPE html>\n";
echo "<html><head><title>Logs API Gestores</title>";
echo "<style>
    body { font-family: Arial, sans-serif; margin: 20px; }
    .success { color: green; background: #e8f5e8; padding: 10px; border-radius: 5px; margin: 10px 0; }
    .error { color: red; background: #ffe8e8; padding: 10px; border-radius: 5px; margin: 10px 0; }
    .info { color: blue; background: #e8f0ff; padding: 10px; border-radius: 5px; margin: 10px 0; }
    .log { background: #f5f5f5; padding: 15px; border-radius: 5px; font-family: monospace; font-size: 12px; white-space: pre-wrap; max-height: 400px; overflow-y: auto; border: 1px solid #ddd; }
    button { background: #007cba; color: white; padding: 10px 20px; border: none; border-radius: 5px; cursor: pointer; margin: 5px; }
    button:hover { background: #005a8a; }
    .status { display: inline-block; padding: 3px 8px; border-radius: 3px; font-size: 12px; margin: 2px; }
    .success-status { background: #d4edda; color: #155724; }
    .error-status { background: #f8d7da; color: #721c24; }
    .info-status { background: #d1ecf1; color: #0c5460; }
</style>";
echo "</head><body>\n";

echo "<h1>📋 Monitoramento API Login Gestores</h1>\n";

// Verificar se arquivo de log existe
$logFile = __DIR__ . '/logs/login-gestor-app.log';
$logDir = dirname($logFile);

echo "<h2>📁 Status dos Logs</h2>\n";

if (!is_dir($logDir)) {
    echo "<div class='error'>❌ Diretório de logs não existe: $logDir</div>\n";
    mkdir($logDir, 0755, true);
    echo "<div class='success'>✅ Diretório criado automaticamente</div>\n";
}

if (!file_exists($logFile)) {
    echo "<div class='info'>ℹ️ Arquivo de log ainda não existe (nenhuma tentativa de login do app)</div>\n";
    echo "<div class='info'>📍 Arquivo será criado em: <code>$logFile</code></div>\n";
    
    // Criar arquivo vazio
    file_put_contents($logFile, "# Log da API de Login de Gestores - Iniciado em " . date('Y-m-d H:i:s') . "\n");
    echo "<div class='success'>✅ Arquivo de log criado</div>\n";
} else {
    $fileSize = filesize($logFile);
    $lastModified = date('Y-m-d H:i:s', filemtime($logFile));
    
    echo "<div class='success'>✅ Arquivo de log existe</div>\n";
    echo "<div class='info'>📊 Tamanho: " . number_format($fileSize) . " bytes</div>\n";
    echo "<div class='info'>🕒 Última modificação: $lastModified</div>\n";
}

echo "<h2>🔄 Ações</h2>\n";
echo "<button onclick='location.reload()'>🔄 Atualizar Logs</button>\n";
echo "<button onclick='limparLogs()'>🗑️ Limpar Logs</button>\n";
echo "<button onclick='testarAPI()'>🧪 Testar API</button>\n";

// Mostrar últimas 50 linhas do log
echo "<h2>📄 Últimas Tentativas de Login</h2>\n";

if (file_exists($logFile) && filesize($logFile) > 0) {
    $lines = file($logFile, FILE_IGNORE_NEW_LINES);
    $lastLines = array_slice($lines, -50); // Últimas 50 linhas
    
    $content = implode("\n", $lastLines);
    
    if (empty(trim($content))) {
        echo "<div class='info'>📋 Nenhuma tentativa de login registrada ainda</div>\n";
    } else {
        echo "<div class='log'>$content</div>\n";
        
        // Análise rápida
        $totalLinhas = count($lastLines);
        $sucessos = count(array_filter($lastLines, function($line) { return strpos($line, 'Login bem-sucedido') !== false; }));
        $erros = count(array_filter($lastLines, function($line) { return strpos($line, 'Erro') !== false; }));
        $tentativas = count(array_filter($lastLines, function($line) { return strpos($line, 'INICIO LOGIN') !== false; }));
        
        echo "<h3>📊 Estatísticas Rápidas</h3>\n";
        echo "<div class='info'>\n";
        echo "<span class='status info-status'>Total de linhas: $totalLinhas</span>\n";
        echo "<span class='status info-status'>Tentativas: $tentativas</span>\n";
        echo "<span class='status success-status'>Sucessos: $sucessos</span>\n";
        echo "<span class='status error-status'>Erros: $erros</span>\n";
        echo "</div>\n";
    }
} else {
    echo "<div class='info'>📋 Arquivo vazio - aguardando primeira tentativa do app</div>\n";
}

// Status das APIs
echo "<h2>🔗 Status das APIs</h2>\n";

$apis = [
    'Nova API (App)' => 'https://sistemas.pinheiroempresas.com.br/controlefrota/backend-php/api/auth/login-gestor-app.php',
    'API Original' => 'https://sistemas.pinheiroempresas.com.br/controlefrota/backend-php/api/auth/login-gestor.php'
];

foreach ($apis as $nome => $url) {
    echo "<div class='info'>\n";
    echo "<strong>$nome:</strong><br>\n";
    echo "<code>$url</code>\n";
    echo "</div>\n";
}

// Instruções
echo "<h2>📱 Como Testar</h2>\n";
echo "<div class='info'>\n";
echo "<ol>\n";
echo "<li><strong>Feche completamente o app</strong> (não apenas minimizar)</li>\n";
echo "<li><strong>Abra o app novamente</strong></li>\n";
echo "<li><strong>Vá em 'Login do Gestor'</strong></li>\n";
echo "<li><strong>Digite:</strong> admin / admin123</li>\n";
echo "<li><strong>Tente fazer login</strong></li>\n";
echo "<li><strong>Volte aqui e atualize a página</strong> para ver os logs</li>\n";
echo "</ol>\n";
echo "</div>\n";

echo "<h2>🔍 O Que Observar nos Logs</h2>\n";
echo "<div class='info'>\n";
echo "<p><strong>✅ Se o app estiver usando a nova API:</strong></p>\n";
echo "<ul>\n";
echo "<li>Você verá linhas com 'INICIO LOGIN GESTOR APP'</li>\n";
echo "<li>User-Agent: 'ControleFretas-Android/1.0'</li>\n";
echo "<li>Logs detalhados de cada etapa</li>\n";
echo "</ul>\n";
echo "<p><strong>❌ Se ainda estiver usando a API antiga:</strong></p>\n";
echo "<ul>\n";
echo "<li>Este arquivo continuará vazio</li>\n";
echo "<li>Você precisará recompilar/reinstalar o app</li>\n";
echo "</ul>\n";
echo "</div>\n";

?>

<script>
function limparLogs() {
    if (confirm('Tem certeza que deseja limpar os logs?')) {
        fetch('<?php echo $_SERVER['PHP_SELF']; ?>?acao=limpar', {
            method: 'POST'
        })
        .then(() => location.reload())
        .catch(err => alert('Erro ao limpar logs: ' + err));
    }
}

function testarAPI() {
    fetch('https://sistemas.pinheiroempresas.com.br/controlefrota/backend-php/api/auth/login-gestor-app.php', {
        method: 'POST',
        headers: {
            'Content-Type': 'application/json'
        },
        body: JSON.stringify({
            usuario: 'admin',
            senha: 'admin123'
        })
    })
    .then(response => response.json())
    .then(data => {
        if (data.sucesso) {
            alert('✅ API funcionando! Gestor: ' + data.gestor.nome);
        } else {
            alert('❌ Erro na API: ' + data.erro);
        }
    })
    .catch(err => alert('❌ Erro de conexão: ' + err));
}

// Auto-refresh a cada 10 segundos
setTimeout(() => location.reload(), 10000);
</script>

<?php
// Processar ação de limpeza
if (isset($_GET['acao']) && $_GET['acao'] === 'limpar') {
    if (file_exists($logFile)) {
        file_put_contents($logFile, "# Log limpo em " . date('Y-m-d H:i:s') . "\n");
    }
    exit('OK');
}
?>

<hr>
<p style='text-align:center;color:#666;'>🔄 Esta página atualiza automaticamente a cada 10 segundos</p>
</body></html> 
