<?php
	// Tenta se conectar ao servidor MySQL
	$provedor = 'http://www.sysfbet.com.br/live/aovivo-sb.xml';
	include $_SERVER["DOCUMENT_ROOT"].'/inc/conexao.php';
	include $_SERVER["DOCUMENT_ROOT"].'/inc/functions.php';
	$cfg = $_SESSION["configs"];

	ini_set('display_errors',0);
	ini_set('display_startup_erros',0);
	error_reporting(0);

	$urlbase = $_SERVER['SERVER_NAME'].$_SERVER ['REQUEST_URI'];
	$parts = parse_url($urlbase);
	parse_str($parts['query'], $query);
	$_GET = $query;
	$token = $_GET["token"];
	if($token == '' && isset($_SESSION["usuario"])){ $token = $_SESSION["usuario"]["api_token"]; $_GET["token"] = $_SESSION["usuario"]["api_token"]; }

	// Configs do ao vivo
	$tempo_limite = (int)$cfg["config_aovivo_ate"];
	$desconto_aovivo = (int)$cfg["config_aovivo"];
	$tipo_desconto = '+';
	if($desconto_aovivo < 0){ $tipo_desconto = '-'; $desconto_aovivo = str_replace('-', '', $desconto_aovivo); }

	// Verifica type e permissões
	if(!isset($_GET["token"])){
		if((int)$_SESSION["usuario"]["id"] == '0'){
			$ret['error'] = 'O ao vivo não está disponível para usuários não autenticados.'; $ret['status'] = 'error'; $ret['status_code'] = 'notfoundtype'; finishJSONRequest($ret);
		} else {
			$ret['error'] = 'Token inexistente ou invalido.'; $ret['status'] = 'error'; $ret['status_code'] = 'notfoundtype'; finishJSONRequest($ret);
		}
	}

	// Retorno
	$ret = array();

	// Pesquisa usuário
	$sql = $mysqli->query("SELECT usuario_id, usuario_permissoes, usuario_nome FROM usuarios WHERE usuario_api_token = '$token'");
	if(mysqli_num_rows($sql) == 0 || !isset($_GET["token"]) || $_GET["token"] == ''){ $ret['error'] = 'TOKEN invalido.'; $ret['status'] = 'error'; $ret['status_code'] = 'notfoundtype'; finishJSONRequest($ret); }

	// Pega dados do usuario
	$u = $sql->fetch_assoc();
	$userid = $u["usuario_id"];
	$perms = explode('-', $u["usuario_permissoes"]);

	// Verifica type e permissões
	if(count($perms) == 0 || !in_array('7', $perms)){ $ret['error'] = 'Você não possui permissões suficientes para apostar ao vivo.'; $ret['status'] = 'error'; $ret['status_code'] = 'invalidPerm'; finishJSONRequest($ret); }

	// Pesquisa
	// if(!$sql){ $ret['error'] = 'Erro de consulta: '.$mysqli->error; $ret['status'] = 'error'; $ret['status_code'] = 'dbExecError'; finishJSONRequest($ret); }

	############################################ VALOR APOSTADO NOS JOGOS ############################################
	// Informações para atualização via GET JAVASCRIPT
	if(isset($_GET["autolive"])){

		// Consulta valor apostado
		if(!isset($_SESSION["placed_bets"])){
			// Consulta últimas apostas
			$_SESSION["placed_bets"] = array();
			$_SESSION["placed_bets"]['last'] = 0;
			$sql = $mysqli->query("SELECT cupom_id, cupom_valor, cupom_matches FROM cupons ORDER BY cupom_id DESC LIMIT 1500");
			while ($pb = $sql->fetch_assoc()) {
				if($pb["cupom_id"] > $_SESSION["placed_bets"]['last']){ $_SESSION["placed_bets"]['last'] = $pb["cupom_id"]; }
				$pbmatches = explode('-', $pb["cupom_matches"]);
				foreach ($pbmatches as $pbmid) {
					if(!isset($_SESSION["placed_bets"]['matches'][$pbmid])){ $_SESSION["placed_bets"]['matches'][$pbmid] = 0; }
					$_SESSION["placed_bets"]['matches'][$pbmid] += $pb["cupom_valor"];
				}
			}

		} else {
			$pblast = $_SESSION["placed_bets"]['last'];
			$sql = $mysqli->query("SELECT cupom_id, cupom_valor, cupom_matches FROM cupons WHERE cupom_id > '$pblast' ORDER BY cupom_id DESC LIMIT 1500");
			while ($pb = $sql->fetch_assoc()) {
				if($pb["cupom_id"] > $_SESSION["placed_bets"]['last']){ $_SESSION["placed_bets"]['last'] = $pb["cupom_id"]; }
				$pbmatches = explode('-', $pb["cupom_matches"]);
				foreach ($pbmatches as $pbmid) {
					if(!isset($_SESSION["placed_bets"]['matches'][$pbmid])){ $_SESSION["placed_bets"]['matches'][$pbmid] = 0; }
					$_SESSION["placed_bets"]['matches'][$pbmid] += $pb["cupom_valor"];
				}
			}
		}
	}
	############################################ /VALOR APOSTADO NOS JOGOS ############################################

	// Consulta provedor
	if(!isset($_SESSION["live_goals"])){ $_SESSION["live_goals"] = array(); }
	$remocoes = array();
	$sql = $mysqli->query("SELECT remocao_nome FROM remocoes ORDER BY remocao_id LIMIT 400");
	while($rem = $sql->fetch_assoc()){ array_push($remocoes, $rem["remocao_nome"]); }

	$ret['date'] = date('Y-m-d H:i:s');
	$x = simplexml_load_file($provedor);
	foreach ($x as $j) {
		$id = (string)$j->id;
		foreach ($j as $k => $v) {
			if($k == 'cotacoes'){ continue; }
			$ret['live'][$id][(string)$k] = (string)$v;
		}

		// Tempo
		if((int)$ret['live'][$id]['tempo'] > $tempo_limite){ unset($ret['live'][$id]); continue; }

		// Cotações
		$ret['live'][$id]['casa'] = (string)$j->cotacoes->time1;
		$ret['live'][$id]['empate'] = (string)$j->cotacoes->empate;
		$ret['live'][$id]['fora'] = (string)$j->cotacoes->time2;
		$ret['live'][$id]['casaid'] = (string)$j->cotacoes->casaid;
		$ret['live'][$id]['empateid'] = (string)$j->cotacoes->empateid;
		$ret['live'][$id]['foraid'] = (string)$j->cotacoes->foraid;
		$ret['live'][$id]['transmissao'] = (string)$j->transmissao;
		$ret['live'][$id]['isActive'] = (in_array($id, $remocoes)) ? '0' : '1';
		$ret['live'][$id]['placed_bets'] = (isset($_SESSION["placed_bets"]['matches'][$id])) ? formataReal($_SESSION["placed_bets"]['matches'][$id]) : '0,00';
		$ret['live'][$id]['isGoal'] = (isset($_SESSION["live_goals"][$id]) && $_SESSION["live_goals"][$id] <> $ret['live'][$id]['placar_jogo']) ? '1' : '0';
		$_SESSION["live_goals"][$id] = $ret['live'][$id]['placar_jogo'];

		// Altera cotações
		$ret['live'][$id]['casa'] = alteraCotacao($ret['live'][$id]['casa'], $desconto_aovivo, $tipo_desconto);
		$ret['live'][$id]['empate'] = alteraCotacao($ret['live'][$id]['empate'], $desconto_aovivo, $tipo_desconto);
		$ret['live'][$id]['fora'] = alteraCotacao($ret['live'][$id]['fora'], $desconto_aovivo, $tipo_desconto);

		// Informações para atualização via GET JAVASCRIPT
		if(isset($_GET["autolive"])){
			$ret['live'][$id]['casaIsSelected'] = (isset($_SESSION["apostas"][$id]) && $_SESSION["apostas"][$id]["aposta_token"] == (string)$j->cotacoes->casaid) ? '1' : '0';
			$ret['live'][$id]['empateIsSelected'] = (isset($_SESSION["apostas"][$id]) && $_SESSION["apostas"][$id]["aposta_token"] == (string)$j->cotacoes->empateid) ? '1' : '0';
			$ret['live'][$id]['foraIsSelected'] = (isset($_SESSION["apostas"][$id]) && $_SESSION["apostas"][$id]["aposta_token"] == (string)$j->cotacoes->foraid) ? '1' : '0';
		}
	}

	// Inicia variáveis

	echo json_encode($ret);
?>