<?php

// Função para realizar a consulta HTTP (GET) para o arquivo .txt
function fetchSportInfo($date) {
    // Construir a URL com a data fornecida
    $url = "https://ota.stv-brasil.com/testtxt/sport_info/$date.txt";

    // Inicializar cURL para fazer a requisição
    $curl = curl_init();

    curl_setopt_array($curl, [
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_URL => $url,
    ]);

    // Executar a requisição e capturar o resultado
    $response = curl_exec($curl);

    // Verificar se ocorreu algum erro na requisição
    if (curl_errno($curl)) {
        curl_close($curl);
        return ['error' => 'Erro ao acessar a URL.'];
    }

    // Fechar a conexão cURL
    curl_close($curl);

    // Decodificar o JSON do conteúdo da resposta
    $data = json_decode($response, true);

    // Verificar se o código de retorno é 0 e se há dados
    if (isset($data['code']) && $data['code'] === 0 && !empty($data['data'])) {
        return $data; // Retorna os dados se houver resultados
    }

    return null; // Retorna null se não houver dados
}

// Função para buscar dados da data de hoje, e se não encontrar, buscar da data anterior
function fetchDataWithFallback() {
    // Data atual
    $currentDate = date('Y-m-d');

    // Tentativa de obter os dados até 7 dias atrás (pode ser ajustado conforme necessário)
    for ($i = 0; $i < 7; $i++) {
        // Calcular a data ajustada (retrocedendo $i dias)
        $dateToCheck = date('Y-m-d', strtotime("$currentDate -$i days"));

        // Tentar buscar os dados para essa data
        $result = fetchSportInfo($dateToCheck);

        // Se encontrar dados, retorná-los
        if ($result !== null) {
            return $result;
        }
    }

    // Se nenhum dado for encontrado nos últimos 7 dias, retorna uma mensagem de erro
    return ['error' => 'Nenhum dado encontrado nos últimos 7 dias.'];
}

// Chamar a função para buscar os dados
$data = fetchDataWithFallback();

// Definir o cabeçalho de resposta como JSON
header('Content-Type: application/json');

// Retornar o resultado como JSON
echo json_encode($data, JSON_PRETTY_PRINT);

?>
