<?php
/**
 * CORRIGIR CREDENCIAIS DOS MOTORISTAS
 * Garantir que todos tenham usuário e senha corretos
 */

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

// Conectar ao banco
function conectarBanco() {
    $host = 'localhost';
    $dbname = 'pinheir3_controle_frotasV1.1';
    $username = 'pinheir3_admin';
    $password = '080880Gelboy';
    
    try {
        $pdo = new PDO("mysql:host=$host;dbname=$dbname;charset=utf8mb4", $username, $password, [
            PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
            PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
        ]);
        return $pdo;
    } catch (PDOException $e) {
        die('Erro de conexão: ' . $e->getMessage());
    }
}

echo "<h1>🔧 CORRIGIR CREDENCIAIS DOS MOTORISTAS</h1>";

try {
    $pdo = conectarBanco();
    
    // 1. MOSTRAR SITUAÇÃO ATUAL
    echo "<h2>1. Situação Atual dos Motoristas</h2>";
    $stmt = $pdo->query("SELECT id, nome, usuario, senha, status FROM motoristas ORDER BY id");
    $motoristas = $stmt->fetchAll();
    
    echo "<table border='1' style='border-collapse: collapse; width: 100%;'>";
    echo "<tr><th>ID</th><th>Nome</th><th>Usuário</th><th>Senha</th><th>Status</th><th>Problema</th></tr>";
    
    $problemas = [];
    foreach ($motoristas as $m) {
        $problema = [];
        if (empty($m['usuario']) || is_null($m['usuario'])) $problema[] = "Sem usuário";
        if (empty($m['senha']) || is_null($m['senha'])) $problema[] = "Sem senha";
        if ($m['status'] !== 'ativo') $problema[] = "Status: " . $m['status'];
        
        $problemas[$m['id']] = $problema;
        
        echo "<tr>";
        echo "<td>{$m['id']}</td>";
        echo "<td>{$m['nome']}</td>";
        echo "<td>" . ($m['usuario'] ?: '<em>NULL</em>') . "</td>";
        echo "<td>" . ($m['senha'] ?: '<em>NULL</em>') . "</td>";
        echo "<td>{$m['status']}</td>";
        echo "<td style='color: red;'>" . implode(', ', $problema) . "</td>";
        echo "</tr>";
    }
    echo "</table>";
    
    // 2. CORRIGIR CREDENCIAIS
    echo "<h2>2. Aplicando Correções</h2>";
    
    $correcoes = [
        1 => ['nome' => 'João Silva', 'usuario' => 'joao.silva', 'senha' => '123456'],
        2 => ['nome' => 'Maria Santos', 'usuario' => 'maria.santos', 'senha' => '123456'],
        3 => ['nome' => 'Pedro Silva', 'usuario' => 'pedro.silva', 'senha' => '123456'],
        4 => ['nome' => 'Administrador', 'usuario' => 'admin', 'senha' => '123456']
    ];
    
    foreach ($motoristas as $m) {
        $id = $m['id'];
        $precisaCorrigir = !empty($problemas[$id]);
        
        if ($precisaCorrigir) {
            echo "<div style='margin: 10px 0; padding: 10px; border: 1px solid #ccc;'>";
            echo "<strong>Corrigindo ID {$id} - {$m['nome']}:</strong><br>";
            
            // Determinar credenciais corretas
            $novoUsuario = null;
            $novaSenha = '123456';
            
            if (isset($correcoes[$id])) {
                $novoUsuario = $correcoes[$id]['usuario'];
                echo "✅ Usando correção pré-definida: {$novoUsuario}<br>";
            } else {
                // Gerar usuário baseado no nome
                $novoUsuario = strtolower(str_replace(' ', '.', $m['nome']));
                echo "🔧 Gerando usuário: {$novoUsuario}<br>";
            }
            
            // Aplicar correção
            try {
                $stmt = $pdo->prepare("UPDATE motoristas SET usuario = ?, senha = ?, status = 'ativo' WHERE id = ?");
                $stmt->execute([$novoUsuario, $novaSenha, $id]);
                
                echo "✅ <span style='color: green;'>CORRIGIDO!</span><br>";
                echo "&nbsp;&nbsp;Usuário: <strong>{$novoUsuario}</strong><br>";
                echo "&nbsp;&nbsp;Senha: <strong>{$novaSenha}</strong><br>";
                
            } catch (Exception $e) {
                echo "❌ <span style='color: red;'>ERRO: {$e->getMessage()}</span><br>";
            }
            
            echo "</div>";
        } else {
            echo "<div style='margin: 5px 0; color: green;'>✅ ID {$id} - {$m['nome']}: OK</div>";
        }
    }
    
    // 3. RESULTADO FINAL
    echo "<h2>3. Resultado Final</h2>";
    $stmt = $pdo->query("SELECT id, nome, usuario, senha, status FROM motoristas ORDER BY id");
    $motoristasFinais = $stmt->fetchAll();
    
    echo "<table border='1' style='border-collapse: collapse; width: 100%;'>";
    echo "<tr><th>ID</th><th>Nome</th><th>Usuário</th><th>Senha</th><th>Status</th><th>Para Login</th></tr>";
    
    foreach ($motoristasFinais as $m) {
        $loginOk = !empty($m['usuario']) && !empty($m['senha']) && $m['status'] === 'ativo';
        
        echo "<tr style='background: " . ($loginOk ? '#e8f5e8' : '#ffe8e8') . ";'>";
        echo "<td>{$m['id']}</td>";
        echo "<td>{$m['nome']}</td>";
        echo "<td><strong>{$m['usuario']}</strong></td>";
        echo "<td><strong>{$m['senha']}</strong></td>";
        echo "<td>{$m['status']}</td>";
        echo "<td>" . ($loginOk ? '✅ OK' : '❌ Problema') . "</td>";
        echo "</tr>";
    }
    echo "</table>";
    
    // 4. CREDENCIAIS PARA TESTE
    echo "<h2>4. 📱 Credenciais para Testar no App</h2>";
    echo "<div style='background: #f0f8ff; padding: 15px; border: 2px solid #0066cc;'>";
    
    foreach ($motoristasFinais as $m) {
        if (!empty($m['usuario']) && !empty($m['senha']) && $m['status'] === 'ativo') {
            echo "<div style='margin: 5px 0;'>";
            echo "<strong>{$m['nome']}:</strong> ";
            echo "<code>{$m['usuario']}</code> / <code>{$m['senha']}</code>";
            echo "</div>";
        }
    }
    
    echo "</div>";
    
    // 5. TESTE DE LOGIN
    echo "<h2>5. 🧪 Teste Rápido de Login</h2>";
    echo "<div style='background: #f8f8f8; padding: 10px;'>";
    
    foreach ($motoristasFinais as $m) {
        if (!empty($m['usuario']) && !empty($m['senha']) && $m['status'] === 'ativo') {
            $testUrl = "api-login-debug.php?email={$m['usuario']}&senha={$m['senha']}";
            echo "<div>";
            echo "<strong>{$m['nome']}:</strong> ";
            echo "<a href='{$testUrl}' target='_blank'>Testar Login</a>";
            echo "</div>";
        }
    }
    
    echo "</div>";
    
} catch (Exception $e) {
    echo "<div style='color: red; font-weight: bold;'>ERRO: " . $e->getMessage() . "</div>";
}

?>

<style>
table { border-collapse: collapse; width: 100%; margin: 10px 0; }
th, td { border: 1px solid #ccc; padding: 8px; text-align: left; }
th { background: #f0f0f0; font-weight: bold; }
</style> 
