<?php
  session_start();
  require $_SERVER["DOCUMENT_ROOT"].'/api/api.php';

  // ini_set('display_errors',1);
  // ini_set('display_startup_erros',1);
  // error_reporting(E_ALL);

  // Verifica se atualizará cotações
  $atualizarCotacoes = 1;
  $tempo_seguranca = $_SESSION["configs"]["config_aovivo_tempo_seguranca"]; // segundos
  $margem = $_SESSION["configs"]["config_aovivo_margem"];
  $msg = '';
  $oddsAtualizadas = 0;

  // Pesquisa se há jogos ao vivo
  $i = 0;
  foreach ($_SESSION["apostas"] as $k => $aposta) {
    if($aposta["codigo_aposta"] <> 'aovivo'){ continue; }
    if($i == 0){
      // Margem de segurança
      sleep($tempo_seguranca);
    }

    $params['token'] = $_SESSION["usuario"]["api_token"];
    $params['registro'] = $aposta["aposta_match_id"];
    $api = api('/getOptionsLive/'.$aposta["aposta_match_id"], $params);
    $api = json_decode($api, 1);

    // Percorre opções disponíveis
    $validado = 0;
    $aux_op = 0;
    $aux_ex = '';
    foreach ($api['markets'] as $m => $o2) {
      foreach ($o2 as $o) {
        $aux_op++;
        $aux_ex .= 'ID: '.$o['id'].' - ';
        if($o["id"] <> $aposta["aposta_token"]){ continue; }
        $validado = 1;

        // Verifica se está trancado
        if($o["locked"] == 'True' || $o["locked"] == '1'){ $msg .= ' | A opção solicitada para a partida '.$aposta["aposta_jogo_nome"].' não está disponível. '; continue; }

        // Verifica cotação
        if($o["odd"] < ($aposta["aposta_cotacao"] - $margem)){
          $oddsAtualizadas = 1;
          $_SESSION["apostas"][$k]["aposta_cotacao"] = $o["odd"];
          continue;
        }
      }
    }

    if($validado == '0'){ $msg .= ' | A partida '.$aposta["aposta_jogo_nome"].' não está disponível. AUOP: '.$aux_op.' | '.$aux_ex; continue; }
    if($oddsAtualizadas == '1'){ $msg = 'As cotações foram atualizadas.'; continue; }

    $i++;
  }

  if($msg <> ''){ setErrorAJAX($msg); exit; }

?>
