<?php
if (empty($numero) || empty($idbanco)){
	echo "<script>window.alert('ERRO. dados nao encontrado');</script>";
} else {
	require('../adodb/adodb.inc.php'); //biblioteca necessaria para trabalhar com adodb
	require('../Amfphp/Services/conexao.php');
	require('../Amfphp/Services/funcoes.php');
	$con = new conexao();
	$sql="select financeiro.numero, financeiro.valor, financeiro.dataemissao, financeiro.datavencimento, financeiro.descricao as DescricaoBoleto, financeiro.situacao as SitBoleto, banco.*, provedor.nome from financeiro, banco, provedor where financeiro.idbanco = banco.idbanco and financeiro.idprovedor = provedor.idprovedor and financeiro.numero = '$numero' and financeiro.idbanco = '$idbanco'";	
	$resultado             = $con->banco->Execute($sql);
	$registro              = $resultado->FetchNextObject();
	$boleto_situacao	   = $registro->SITBOLETO;	
	
	if ($numero <> $registro->NUMERO){
		echo "Erro. Favor contactar o administrador";
	} else {
		$vencido = "NAO";
		// Alterado em 10/04/2012 para aparecer mensagem de Desconto por pgto antecipado
		$vcto_original = $registro->DATAVENCIMENTO;
		$vcto_original = dmy($vcto_original);
		$perc_desconto = intval($registro->DESCONTO);
		// Final da alteracao
		
	if ($boleto_situacao == "Pago"){
		echo "<script>window.alert('Atencao. Este boleto ja foi pago.');</script>";	
	}
	if ($boleto_situacao == "Cancelado"){
		echo "<script>window.alert('Atencao. Este boleto foi cancelado.');</script>";	
	}
	if ($boleto_situacao == "Pendente"){
		$diaatual=date('d');
		$mesatual=date('m');
		$anoatual=date('Y');
		$dataymd="$anoatual$mesatual$diaatual";
		
		$diavcto=substr($registro->DATAVENCIMENTO,8,2);
		$mesvcto=substr($registro->DATAVENCIMENTO,5,2);
		$anovcto=substr($registro->DATAVENCIMENTO,0,4);
		$vctoymd="$anovcto$mesvcto$diavcto";
		
		
		if ($vctoymd < $dataymd){
			$diaatual++;
			if ($diaatual > 30){
				$mesatual++;
			}
			if ($mesatual > 12){
				$anoatual++;
				$mesatual="01";
			}
			if ($mesatual == "02" && $diaatual > 28){
				$mesatual="03";
				$diaatual="01";	
			}
			echo "<script>window.alert('O boleto atual se encontra vencido. Por este motivo, os descontos concedidos para pagamentos antes do vencimento foram retirados. Para sua comodidade, alteramos o vencimento dele para $diaatual/$mesatual/$anoatual');</script>";
			$mesatual = CompletaComZeros(2,$mesatual);
			$diaatual = CompletaComZeros(2,$diaatual);
			$financeiro_vencimento="$anoatual-$mesatual-$diaatual";
			$vencido = "SIM";
		} else {
			$financeiro_vencimento = $registro->DATAVENCIMENTO;	
		}
			
		$financeiro_desconto   = "";
		$financeiro_acobrar    = $registro->VALOR;		
		$financeiro_valor      = $financeiro_acobrar;
		
		$financeiro_emissao    = $registro->DATAEMISSAO;
		$financeiro_emissao    = substr($financeiro_emissao,0,10);
		
		$financeiro_descricao  = $registro->DESCRICAOBOLETO;
		$banco_tx              = $registro->TXBANCARIA;
		$banco_juros           = $registro->JUROS;
		$banco_desconto        = $registro->DESCONTO;
		$banco_mora            = $registro->MORA;
		$banco_agencia         = $registro->AGENCIA;
		$banco_conta           = $registro->CONTA;
		$banco_dv              = $registro->DV;
		$banco_byte            = $registro->BYTE;
		$banco_praca           = $registro->PRACA;
		$banco_cedente         = $registro->TITULAR;
		$banco_cidade          = $registro->CIDADE;
		$banco_uf              = $registro->UF;
		$provedor_nome         = $registro->NOME;
	
		if ($banco_juros > 0){
			$obs1 = "- Sr. Caixa: Cobrar juros de R\$ $banco_juros ao dia";
		} else {
			$obs1 = "";
		}
		if ($banco_desconto > 0 && $vencido == "NAO"){			
			$financeiro_desconto = ($financeiro_valor * $banco_desconto) / 100;
			$financeiro_desconto = number_format($financeiro_desconto,2,",",".");
			$financeiro_valor    = $financeiro_acobrar - $financeiro_desconto;		
			$obs2 = "- Sr. Caixa. NAO RECEBER ESTE BOLETO APOS $vcto_original.";
			$dados_desconto = "Sr. Cliente. Voce esta recebendo um desconto de R\$ $financeiro_desconto para pagamento ate $vcto_original";
		} else {
			$obs2 = "";
			$dados_desconto = "";
		}
			
		
	
		
	// ------------------------- DADOS DINÂMICOS DO SEU CLIENTE PARA A GERAÇÃO DO BOLETO (FIXO OU VIA GET) -------------------- //
	// Os valores abaixo podem ser colocados manualmente ou ajustados p/ formulário c/ POST, GET ou de BD (MySql,Postgre,etc)	//
	
	// DADOS DO BOLETO PARA O SEU CLIENTE
	$dias_de_prazo_para_pagamento = 5;
	$taxa_boleto = $banco_tx;
	$data_venc = dmy($financeiro_vencimento);  // Prazo de X dias OU informe data: "13/04/2006"; 
	$valor_cobrado = $financeiro_valor; // Valor - REGRA: Sem pontos na milhar e tanto faz com "." ou "," ou com 1 ou 2 ou sem casa decimal
	$valor_cobrado = str_replace(",", ".",$valor_cobrado);
	$valor_boleto=number_format($valor_cobrado, 2, ',', '');
	
	$dadosboleto["inicio_nosso_numero"] = substr($numero,0,2);	// Ano da geração do título ex: 07 para 2007 
	$dadosboleto["nosso_numero"] = substr($numero,3,5); 			// Nosso numero (máx. 5 digitos) - Numero sequencial de controle.
	$dadosboleto["numero_documento"] = "$numero";	// Num do pedido ou do documento
	$dadosboleto["data_vencimento"] = $data_venc; // Data de Vencimento do Boleto - REGRA: Formato DD/MM/AAAA
	$dadosboleto["data_documento"] = dmy($financeiro_emissao); // Data de emissão do Boleto
	$dadosboleto["data_processamento"] = dmy($financeiro_emissao); // Data de processamento do boleto (opcional)
	$dadosboleto["valor_boleto"] = $valor_boleto; 	// Valor do Boleto - REGRA: Com vírgula e sempre com duas casas depois da virgula
	
	// DADOS DO SEU CLIENTE
	$dadosboleto["sacado"] = $provedor_nome;
	$dadosboleto["endereco1"] = "";
	$dadosboleto["endereco2"] = "";
	
	// INFORMACOES PARA O CLIENTE
	$dadosboleto["demonstrativo1"] = "$financeiro_descricao";
	$dadosboleto["demonstrativo2"] = "";
	$dadosboleto["demonstrativo3"] = "$dados_desconto";
	
	// INSTRUÇÕES PARA O CAIXA
	$dadosboleto["instrucoes1"] = "$obs1";
	$dadosboleto["instrucoes2"] = "$obs2";
	$dadosboleto["instrucoes3"] = "";
	$dadosboleto["instrucoes4"] = "";
	
	// DADOS OPCIONAIS DE ACORDO COM O BANCO OU CLIENTE
	$dadosboleto["quantidade"] = "";
	$dadosboleto["valor_unitario"] = "";
	$dadosboleto["aceite"] = "N";	    // N - remeter cobrança sem aceite do sacado  (cobranças não-registradas)
									  // S - remeter cobrança apos aceite do sacado (cobranças registradas)
	$dadosboleto["especie"] = "R$";
	$dadosboleto["especie_doc"] = "A"; // OS - Outros segundo manual para cedentes de cobrança SICREDI
	
	
	// ---------------------- DADOS FIXOS DE CONFIGURAÇÃO DO SEU BOLETO --------------- //
	
	
	// DADOS DA SUA CONTA - SICREDI
	$dadosboleto["agencia"]  = "$banco_agencia"; 	// Num da agencia (4 digitos), sem Digito Verificador
	$dadosboleto["conta"]    = "$banco_conta"; 	// Num da conta (5 digitos), sem Digito Verificador
	$dadosboleto["conta_dv"] = "$banco_dv"; 	// Digito Verificador do Num da conta
	
	// DADOS PERSONALIZADOS - SICREDI
	$dadosboleto["posto"]   = "$banco_praca";      // Código do posto da cooperativa de crédito
	$dadosboleto["byte_idt"]= substr($numero,2,1); // Byte de identificação cedente do bloqueto utilizado para compor o nosso número.
									  // 1 - Idtf emitente: Cooperativa | 2 a 9 - Idtf emitente: Cedente
	$dadosboleto["carteira"] = "A";   // Código da Carteira: A (Simples) 
	
	// SEUS DADOS
	$dadosboleto["identificacao"] = "";
	$dadosboleto["cpf_cnpj"] = "";
	$dadosboleto["endereco"] = "";
	$dadosboleto["cidade_uf"] = "Cidade: $banco_cidade / Estado: $banco_uf";
	$dadosboleto["cedente"] = "$banco_cedente";
	
	// NÃO ALTERAR!
	include("include/funcoes_sicredi.php"); 
	include("include/layout_sicredi.php");
	}
	}
}
?>
