<?php 

$funcao = $_GET['funcao'];
	
	
function basicAuth ($getUrl,$json,$param1=NULL,$param2=NULL,$param3=NULL,$param4=NULL,$param5=NULL) {

	
	$urlWebService ="http://192.168.0.6/ws/";//"https://gamma.adapter.net.br/ws/";//"http://localhost:8080/adapter/ws/";//https://sistemas.viareal.com.br/ws/
	//$urlWebService ="https://sigma.adapter.net.br/ws/";
		switch ($getUrl) {
			case 'geral':
				$url = $urlWebService."comercial/logar"; //gera	
			break;
			
			case 'contratosCliente':
				$url = $urlWebService."comercial/contratos/cliente/" . $param1; //cliente
			break;		

			case 'contrato':
				$url = $urlWebService."comercial/atendimentos/tipos/contrato/" . $param1; //contrato
			break;
				
			case 'faturaPDF':
				$url = $urlWebService."financeiro/fatura/" . $param1; // fatura PDF
			break;
				
			case 'faturaPDFVencida':
				$url = $urlWebService."financeiro/fatura/vencida/" . $param1 . "?novaData=" . $param2; // fatura PDF nova data
			break;

			case 'linhaDigitavel':
				$url = $urlWebService."financeiro/fatura/".$param1."/linha_digitavel?novaData=".$param2; // fatura PDF nova data
			break;
					
			case 'avisos':
				$url = $urlWebService."comercial/avisos_app/" . $json;
			break;

			case 'extrato':
				$url = $urlWebService."comercial/contrato/".$param1."/extrato/navegacao?dataInicio=".$param2."&dataFim=".$param3;
			break;

			case 'extratoLigacao':
				$url = $urlWebService."comercial/contrato/".$param1."/extrato/ligacao?dataInicio=".$param2."&dataFim=".$param3;
			break;
			
			case 'atendimento':
				$url = $urlWebService."comercial/atendimentos/contrato/" .$param1;
			break;

			case 'novoAtendimento':
				$url = $urlWebService."comercial/atendimento" .$param1;
			break;

			case 'tipoAtendimento':
				$url = $urlWebService."comercial/atendimentos/tipos/contrato/" .$param1;
			break;

			case 'total_navegacao':
				$url = $urlWebService."comercial/total_navegacao/contrato/" .$param1;				
			break;
			
			case 'notasFicais':
				$url = $urlWebService."financeiro/notasfiscais/cliente/" .$param1."?dataInicio=".$param2."&dataFim=".$param3;
			break;
			
			case 'notasFiscaisPDF':
				$url = $urlWebService."financeiro/notasfiscais/" .$param1;
			break;

			case 'resetarSenha':
				$url = $urlWebService."comercial/resetar_senha"; 
			break;

			case 'alterarPerfil':
				$url = $urlWebService."comercial/alteraPerfil";//novo método não tem parametros
			break;
			
			case 'habilitarConfianca':
				$url = $urlWebService."comercial/contrato/".$param1."/webservice/alterar/status?descricaoStatus=".$param2;			
			break;

			case 'redefinirSenha':
				$url = $urlWebService."comercial/redefinir_senha?senhaAntiga=".$param1."&novaSenha=".$param2; 
			break;

			case 'validaDDA':
				$url = $urlWebService."financeiro/faturamento/valida/quitacao_anual_debito?dataInicio=01-01-".$param1."&dataFim=31-12-".$param1."&idCliente=".$param2; 				
			break;
			
			case 'baixaDDA':
				$url = $urlWebService."financeiro/faturamento/quitacao_anual_debito?dataInicio=01-01-".$param1."&dataFim=31-12-".$param1."&idCliente=".$param2; 
			break;

			case 'informarPagamento':		
				$url = $urlWebService."financeiro/fatura/informar_pagamento?boleto=".$param1."&valor=".$param2."&vencimento=".$param3."&idCliente=".$param4."&idFatura=".$param5;				
			break;

			case 'verificaFaturaDigital':		
				$url = $urlWebService."comercial/cliente/".$param1."/verificar/fatura_digital";
			break;

			case 'alterarFaturaDigital':		
				$url = $urlWebService."comercial/cliente/".$param1."/alterar/fatura_digital";				
			break;

			case 'buscarVencimentos':		
				$url = $urlWebService."financeiro/buscar/vencimentos";	
			break;

			case 'verificaAlteracaoVencimento':
				$url = $urlWebService."comercial/cliente/".$param1."/verificar/vencimento_contrato?vencimentoAtual=".$param2;
			break;

			case 'alterarVencimento':		
				$url = $urlWebService."comercial/cliente/".$param1."/alterar/vencimento_contrato?vencimentoAtual=".$param2."&novoVencimento=".$param3;	
			break;
		}
								
	
		$data_string = json_encode($json);                                                                                   
		$api_key = "webareaassinante";   
		$password = "via2017";                                                                                                                 
		$ch = curl_init(); 
		curl_setopt($ch, CURLOPT_URL, $url);    
		curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 20);
		curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");  
		curl_setopt($ch, CURLOPT_POST, true);                                                                   
	
		if(!empty($json))curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);                                            
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);    
		curl_setopt($ch, CURLOPT_USERPWD, $api_key.':'.$password);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC); 
	//	if($getUrl == "informarPagamento"){
		//	curl_setopt_array($ch,CURLOPT_POSTFIELDS => [          
		//		  'file' => curl_file_create($comprovante)
			//	]);
		//}

		if ($getUrl == "faturaPDFVencida" OR $getUrl == "faturaPDF" OR $getUrl == "notasFiscaisPDF" OR $getUrl == "baixaDDA" 
		OR $getUrl == "alterarVencimento")
		{
			curl_setopt($ch, CURLOPT_HTTPHEADER, array(   
				'Accept: application/json,text/html,application/xhtml+xml,application/xml;q=0.9,application/pdf,text/plain',
				'Content-Type: application/json')                                                           
			);             

		} else {
			curl_setopt($ch, CURLOPT_HTTPHEADER, array(   
				'Accept: application/json',
				'Content-Type: application/json')                                                           
			);             
		}

		$result = curl_exec($ch);

		if($result === false)
		{
			echo 'Curl error: ' .curl_error($ch);
		}                                                                                                      
		$errors = curl_error($ch);                                                                                                            
		$returnCode = (int)curl_getinfo($ch, CURLINFO_HTTP_CODE);
		curl_close($ch);  
		if ($getUrl == "faturaPDFVencida" OR $getUrl == "faturaPDF" OR $getUrl == "notasFiscaisPDF" OR $getUrl == "alterarPerfil" 
			OR $getUrl == "habilitarConfianca" OR $getUrl =="resetarSenha" OR $getUrl =="redefinirSenha" OR $getUrl == "validaDDA"			
			OR $getUrl == "baixaDDA" OR $getUrl == "informarPagamento" OR $getUrl == "verificaFaturaDigital" OR $getUrl=="alterarFaturaDigital"
			OR $getUrl == "alterarVencimento")
		{
			return $result;
		} else {
			return json_decode($result, true);
		}
	//}
}


function dataAtual($selecionaTipo) {
date_default_timezone_set ("America/Sao_Paulo");
	if ($selecionaTipo == "dmy") { return date("Y-m-d"); }
		else
	if ($selecionaTipo == "his") { return date("Y\-m\-d\ H:i:s"); }
}
function consertaData ($data1,$tipodata) {
	if ($tipodata == "brasil") {
		$quebradata = explode("/", $data1);
		$retornadata = $quebradata[2] . '-' . $quebradata[1] . '-' . $quebradata[0];
	}
	if ($tipodata == "fatura") {
		$quebradata = explode("-", $data1);
		$retornadata = $quebradata[2] . '-' . $quebradata[1] . '-' . $quebradata[0];
	}

	if ($tipodata == "eua") { 
		$retornadata = date('d/m/Y', strtotime($data1));
	}
	if ($tipodata == "euaHoras") { 
		$retornadata = date('d/m/Y - H:i:s', strtotime($data1));
	}
	return $retornadata;
}


function geraSenha($tamanho = 8, $maiusculas = true, $numeros = true, $simbolos = false)
{
	$lmin = 'abcdefghijklmnopqrstuvwxyz';
	$lmai = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
	$num = '1234567890';
	$simb = '!@#$%*-';
	$retorno = '';
	$caracteres = '';
	$caracteres .= $lmin;
	if ($maiusculas) $caracteres .= $lmai;
	if ($numeros) $caracteres .= $num;
	if ($simbolos) $caracteres .= $simb;
	$len = strlen($caracteres);
	for ($n = 1; $n <= $tamanho; $n++) {
	$rand = mt_rand(1, $len);
	$retorno .= $caracteres[$rand-1];
	}
	return $retorno;
}

function geraToken ($codigo) {
	$inicio = geraSenha(12);
	$md5Cod = md5($codigo);
	$data = md5(dataAtual("dmy"));
	$final = $inicio .''.$md5Cod.''.$data;
	return $final;
}
function confereToken ($token) {
	$token_inicio = substr($token,0,-32);
	$token_final = substr($token_inicio,12,32);
	return $token_final;
}



switch ($funcao) {
	
	

	
	case "notasFiscais":
	    		session_start();
		$cod_cliente   = $_SESSION['codCliente'];
		$usuario_login = $_SESSION['usuarioNome'];
		$usuario_senha = $_SESSION['getpasswd'];		
		echo $cod_cliente;
//		$data_inicial = $_POST['dataInicial'];
//		$data_final = $_POST['dataFinal'];
		$data_inicial = '2019-08-01';
		$data_final = '2020-01-01';



		$notasFiscais = basicAuth("notasFicais",array("usuario" => "$usuario_login", "senha" => "$usuario_senha"),$cod_cliente,$data_inicial, $data_final);	
		echo json_encode($notasFiscais);	
	break;
}
?>
