<?php
$seo['title'] = 'Obrigado por comprar conosco';
include "topo.php";

// TOKEN pagseguro
define('TOKEN', $_SESSION['rz2']['config']['pagseguro-token']);

// classe para tratamento do retorno do pagseguro
include PATHCLASSES.'pagseguro_v022/retorno.php';

// captura os dados do pagseguro
function retorno_automatico($VendedorEmail, $TransacaoID,
  $Referencia, $TipoFrete, $ValorFrete, $Anotacao, $DataTransacao,
  $TipoPagamento, $StatusTransacao, $CliNome, $CliEmail,
  $CliEndereco, $CliNumero, $CliComplemento, $CliBairro, $CliCidade,
  $CliEstado, $CliCEP, $CliTelefone, $produtos, $NumItens) {

	// AQUI VOCÊ TEM OS DADOS RECEBIDOS DO PAGSEGURO, JÁ VERIFICADOS.
	// CONFIRA A LISTA DE PRODUTOS E O VALOR COM O QUE VOCÊ TEM NO
	// BANCO DE DADOS E, SE ESTIVER TUDO CERTO, ATUALIZE O STATUS
	// DO PEDIDO.

  	global $db;

  	###########################################
  	# salva na tabela rz2_retorno_pagseguro
  	###########################################
  	$postPagseguro = "";
	$postPagseguro .= "vendedor: ".$VendedorEmail;
	$postPagseguro .= "<br />";
	$postPagseguro .= "transacaoID: ".$TransacaoID;
	$postPagseguro .= "<br />";
	$postPagseguro .= "referencia: ".$Referencia;
	$postPagseguro .= "<br />";
	$postPagseguro .= "tipofrete: ".$TipoFrete;
	$postPagseguro .= "<br />";
	$postPagseguro .= "valorfrete: ".$ValorFrete;
	$postPagseguro .= "<br />";
	$postPagseguro .= "anotacao: ".$Anotacao;
	$postPagseguro .= "<br />";
	$postPagseguro .= "data: ".$DataTransacao;
	$postPagseguro .= "<br />";
	$postPagseguro .= "tipopgto: ".$TipoPagamento;
	$postPagseguro .= "<br />";
	$postPagseguro .= "status: ".$StatusTransacao;
	$postPagseguro .= "<br />";
	$postPagseguro .= "cliente: ".$CliNome;
	$postPagseguro .= "<br />";
	$postPagseguro .= "cli-email: ".$CliEmail;
	$postPagseguro .= "<br />";
	$postPagseguro .= "cli-endereco: ".$CliEndereco;
	$postPagseguro .= "<br />";
	$postPagseguro .= "cli-numero: ".$CliNumero;
	$postPagseguro .= "<br />";
	$postPagseguro .= "cli-complemento: ".$CliComplemento;
	$postPagseguro .= "<br />";
	$postPagseguro .= "cli-bairro: ".$CliBairro;
	$postPagseguro .= "<br />";
	$postPagseguro .= "cli-cidade: ".$CliCidade;
	$postPagseguro .= "<br />";
	$postPagseguro .= "cli-estado: ".$CliEstado;
	$postPagseguro .= "<br />";
	$postPagseguro .= "cli-cep: ".$CliCEP;
	$postPagseguro .= "<br />";
	$postPagseguro .= "cli-telefone: ".$CliTelefone;
	$postPagseguro .= "<br />";
	$postPagseguro .= "numItens: ".$NumItens;
	$postPagseguro .= "<br />";
	$postPagseguro .= "produtos: <pre>".print_r($produtos,true)."</pre>";
	$sql = "INSERT INTO rz2_retorno_pagseguro (id,post,data,id_pedido) VALUES ('','".utf8_encode($postPagseguro)."',now(),".$Referencia.")";
	$db->query($sql);

  	###########################################
  	# atualiza status
  	###########################################
  	$objPedido = new Pedido();
  	$objPedido->id = $Referencia;
  	$objPedido->carregar();
  	$statusAtual = $objPedido->idPedidoStatus;

  	/*
	Em Análise: Pagamento aprovado, em analise pelo PagSeguro
	Aguardando Pagto: Aguardando pagamento do cliente
	Completo: Pagamento completo
	Aprovado: Pagamento aprovado, aguardando compensação
	Cancelado: Pagamento cancelado pelo PagSeguro
	*/
  	$restauraEstoque = false;
  	switch(trim(utf8_encode($StatusTransacao))){
  		case "Em Análise":
  			$novoStatus = ANALISE;
  			break;
  		case "Aguardando Pagto":
  			$novoStatus = AGUARDANDO;
  			break;
  		case "Completo":
  			$novoStatus = APROVADO;
  			break;
  		case "Aprovado":
  			$novoStatus = APROVADO;
  			break;
  		case "Cancelado":
  			$novoStatus = CANCELADO;
  			$restauraEstoque = true;
  			break;
  		default:
  			$novoStatus = $statusAtual;
  	}
	$objPedido->idPedidoStatus = $novoStatus;
	$objPedido->alterar();

  	###########################################
  	# atualiza historico
  	###########################################
  	if($novoStatus != $statusAtual){
  		$objPedido->inserirHistorico($objPedido->idPedidoStatus);
  	}

	###########################################
  	# restaura estoque por cancelamento
  	###########################################
  	if($restauraEstoque){
		if(is_array($produtos)){
			foreach($produtos as $dadosProd){
				$objProduto = new Produto();
				$objProduto->id = $dadosProd['ProdID'];
				$objProduto->carregar();
				$novaQtde = $objProduto->qtde+$dadosProd['ProdQuantidade'];
				if($novaQtde < 0) $novaQtde = 0;
				$objProduto->qtde = $novaQtde;
				$objProduto->alterar();
			}
		}
  	}

}

###########################################
# limpa o carrinho
###########################################
unset($_SESSION['rz2']['carrinho']);
?>

<div class="container">

    <h2 class="titulo mg-tp-40">Pedido realizado com sucesso!</h2>

    <div class="texto mg-bt-100">
    Recebemos seu pedido e estamos aguardando pela confirmação do pagamento.<br />
    Acesse nossa <a href="<?=URLRAIZ?>central-de-atendimento" title="Central de Atendimento"><b>Central de Atendimento</b></a> e entre em contato para obter maiores informações.
    </div>

</div>

<?php include 'rodape.php'; ?>