Arquivo proxy.php (o intermediador de confiança) 🛡️ Função: O proxy.php é como o segurança da sala de dados. Ele se posiciona entre o seu servidor e a API oficial da Inframerica por três motivos: Evitar bloqueios de CORS: Navegadores, por padrão, bloqueiam chamadas diretas a APIs externas por segurança. O proxy “destrava” isso, pois o navegador fala com o seu servidor (mesmo domínio) e o seu servidor fala com a API. Mascarar o acesso direto à API: Você não precisa expor a URL oficial da Inframerica publicamente. Cache inteligente: Ele salva temporariamente a resposta da API em arquivos .json no diretório /cache, economizando chamadas repetidas e acelerando o carregamento. -------------------- 🧠 Como funciona o sistema do Painel de Voos - em analogia simples 🗂 1. Arquivo gerar-json-filtrado.php (o coletor inteligente) Função: Ele é quem vai até o "aeroporto oficial" (a API da Inframerica) e traz os voos. Filtro: Só traz os voos com horário estimado para até 3h30 do momento atual, mas inclui exceção para voos com status "Atrasado" mesmo fora desse intervalo. Frequência: Roda automaticamente a cada 1 minuto via cron job. Saída: Salva os dados em um arquivo chamado hora-filtro-3-5.json, que é a "caixinha de dados atualizada". -------------------- 📦 2. Arquivo hora-filtro-3-5.json (a caixa de voos atualizada) Função: É o arquivo de dados que será lido pelo painel. Conteúdo: Contém apenas os voos relevantes (filtrados). Atualização: Sempre que a cron roda, ele é sobrescrito com os dados mais atuais. -------------------- 🖥️ 3. Arquivo voo.html (o painel de exibição) Função: É a tela que mostra os voos, com animações, status coloridos e ícones. Ações automáticas: Atualiza as páginas dos voos a cada 15 segundos (efeito de rotação dos voos). Consulta o arquivo JSON hora-filtro-3-5.json a cada 1 minuto e 15 segundos para mostrar novos dados sem dar refresh na tela. Atualiza toda a página automaticamente a cada 3 minutos, garantindo que até alterações de layout, CSS ou cache sejam renovadas. -------------------- ⏱ CRON JOB (a cada 1 min) ↓ 📄 gerar-json-filtrado.php (busca via proxy.php) ↓ 📦 Salva dados filtrados em hora-filtro-3-5.json ↓ 🧠 voo.html lê esse JSON a cada 1:15 min ↓ 🖥️ Atualiza a tabela (e anima a barra de tempo) ↓ ♻️ A cada 3 min → recarrega toda a página