<?php
session_start();

// 1. CONFIGURAÇÕES DE ARQUIVOS
$file_usuarios = 'usuarios.json';
$file_pedidos = 'db_pedidos.json';

if (!isset($_SESSION['usuario_id'])) { 
    die("Erro: Sessão expirada. Faça login novamente."); 
}

$meu_id = trim(strval($_SESSION['usuario_id']));

// FUNÇÃO PARA LER JSON
function lerDados($arquivo) {
    if (!file_exists($arquivo)) return [];
    return json_decode(file_get_contents($arquivo), true) ?: [];
}

$usuarios = lerDados($file_usuarios);
$pedidos = lerDados($file_pedidos);

// Encontrar dados do usuário logado para pegar o Nome também (caso o pedido use nome)
$user_logado = null;
foreach ($usuarios as $u) {
    if (trim(strval($u['id'])) === $meu_id) { 
        $user_logado = $u; 
        break; 
    }
}

// 2. LÓGICA DE DÉBITO (ABATE DO SALDO)
if (isset($_GET['id']) && isset($_GET['valor'])) {
    $id_url = $_GET['id'];
    $valor_url = floatval($_GET['valor']);
    $_SESSION['pedido_ativo_id'] = $id_url;

    if (!isset($_SESSION['pago_' . $id_url])) {
        foreach ($usuarios as $index => $u) {
            if (trim(strval($u['id'])) === $meu_id) {
                $saldo_atual = floatval($u['saldo']);
                if ($saldo_atual >= $valor_url) {
                    $usuarios[$index]['saldo'] = $saldo_atual - $valor_url;
                    file_put_contents($file_usuarios, json_encode($usuarios, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE), LOCK_EX);
                    $_SESSION['pago_' . $id_url] = true;
                }
                break;
            }
        }
    }
}

// 3. BUSCA AGRESSIVA DA CORRIDA (Procura por ID ou Nome do Cliente)
$pedido_atual = null;
$id_para_exibir = $_SESSION['pedido_ativo_id'] ?? ($_GET['id'] ?? '');

foreach ($pedidos as $p) {
    // Tenta achar pelo ID da URL/Sessão OU se o pedido pertence ao ID/Nome do usuário logado e não está concluído
    if ($p['id'] == $id_para_exibir) {
        $pedido_atual = $p;
        break;
    }
    // Se não achou pelo ID, tenta ver se tem algum pedido pendente para este usuário
    if (isset($p['cliente_id']) && $p['cliente_id'] == $meu_id && $p['status'] != "Viagem Concluída") {
        $pedido_atual = $p;
        break;
    }
}

// 4. AÇÃO DO BOTÃO VERDE (CONCLUIR)
if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['btn_concluir'])) {
    $id_finalizar = $pedido_atual['id'] ?? $id_para_exibir;
    foreach ($pedidos as &$p) {
        if ($p['id'] == $id_finalizar) {
            $p['status'] = "Viagem Concluída";
            break;
        }
    }
    file_put_contents($file_pedidos, json_encode($pedidos, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE), LOCK_EX);
    unset($_SESSION['pedido_ativo_id']);
    header("Location: acompanhamento.php");
    exit;
}
?>

<!DOCTYPE html>
<html lang="pt-br">
<head>
    <meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0">
    <script src="https://cdn.tailwindcss.com"></script>
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
    <title>BRT Express | Acompanhamento</title>
</head>
<body class="bg-[#0f172a] text-white p-5 pb-24 font-sans">

    <div class="max-w-md mx-auto">
        
        <div class="bg-gradient-to-r from-[#003964] to-blue-900 p-7 rounded-[2.5rem] mb-6 shadow-2xl border-b-4 border-blue-400/20 flex justify-between items-center">
            <div>
                <p class="text-[9px] font-black uppercase text-blue-300 tracking-[0.2em]">Saldo Disponível</p>
                <h2 class="text-3xl font-black italic">R$ <?php echo number_format($user_logado['saldo'] ?? 0, 2, ',', '.'); ?></h2>
            </div>
            <div class="bg-yellow-500 text-[#003964] p-3 rounded-2xl shadow-lg">
                <i class="fab fa-pix text-xl"></i>
            </div>
        </div>

        <?php if($pedido_atual): ?>
            <div class="bg-white rounded-[2.5rem] overflow-hidden text-slate-900 shadow-2xl">
                
                <div class="p-6 text-center <?php echo ($pedido_atual['status'] == 'Viagem Concluída') ? 'bg-green-500' : 'bg-blue-600'; ?> text-white font-black uppercase italic">
                    <?php echo $pedido_atual['status']; ?>
                </div>

                <div class="p-8">
                    <div class="bg-slate-50 p-4 rounded-2xl mb-8 flex justify-between border border-slate-100">
                        <div class="text-left">
                            <p class="text-[8px] font-black text-slate-400 uppercase">Valor</p>
                            <p class="text-sm font-black">R$ <?php echo number_format($pedido_atual['valor'] ?? 0, 2, ',', '.'); ?></p>
                        </div>
                        <div class="text-right">
                            <p class="text-[8px] font-black text-slate-400 uppercase">Destino</p>
                            <p class="text-sm font-black italic text-blue-600"><?php echo $pedido_atual['estacao'] ?? 'Não informada'; ?></p>
                        </div>
                    </div>

                    <?php if($pedido_atual['status'] == 'Viagem Concluída'): ?>
                        <div class="text-center">
                            <p class="text-green-600 font-black text-xs uppercase mb-4 tracking-widest">Corrida Finalizada!</p>
                            <a href="index.php" class="bg-[#003964] text-white px-10 py-4 rounded-2xl text-[10px] font-black uppercase inline-block">Nova Corrida</a>
                        </div>
                    <?php elseif(stripos($pedido_atual['status'] ?? '', 'Procurando') !== false): ?>
                        <div class="text-center py-4">
                            <div class="w-10 h-10 border-4 border-blue-600 border-t-transparent rounded-full animate-spin mx-auto mb-4"></div>
                            <p class="text-[10px] font-black text-slate-400 uppercase tracking-widest animate-pulse">Buscando Entregador...</p>
                        </div>
                    <?php else: ?>
                        <form method="POST">
                            <button name="btn_concluir" class="w-full bg-green-500 text-white font-black py-5 rounded-2xl shadow-xl uppercase italic text-xs border-b-4 border-green-700 active:scale-95 transition-all">
                                <i class="fas fa-check-circle mr-2"></i> Confirmar Recebimento
                            </button>
                        </form>
                    <?php endif; ?>
                </div>
            </div>
        <?php else: ?>
            <div class="text-center py-16 bg-slate-800/20 rounded-[2.5rem] border-2 border-dashed border-slate-700 text-slate-500">
                <i class="fas fa-motorcycle text-4xl mb-4 opacity-20"></i>
                <p class="text-[10px] font-black uppercase tracking-widest">Nenhuma corrida encontrada para o seu ID.</p>
                <p class="text-[8px] mt-2 italic">ID Logado: <?php echo $meu_id; ?></p>
                <a href="index.php" class="inline-block mt-4 text-blue-400 font-bold text-xs underline">Fazer um Pedido</a>
            </div>
        <?php endif; ?>

    </div>

    <div class="fixed bottom-0 left-0 right-0 bg-slate-900 border-t border-white/5 p-5 flex justify-around">
        <a href="index.php" class="text-slate-500"><i class="fas fa-motorcycle text-xl"></i></a>
        <a href="acompanhamento.php" class="text-blue-500"><i class="fas fa-wallet text-xl"></i></a>
        <a href="perfil.php" class="text-slate-500"><i class="fas fa-user text-xl"></i></a>
    </div>

</body>
</html>