<?php $emisor=$_POST['emisor']; ?>
<?php $comp=$_POST['comprobante']; ?>

<?php
$cfg_empr='demo';
if($emisor=='0992968516001'){$cfg_empr='edsk';}
if($emisor=='0991209867001'){$cfg_empr='nsm1';}
if($emisor=='0790060288001'){$cfg_empr='inbo';}
if($emisor=='0991327258001'){$cfg_empr='gaec';}
if($emisor=='0992420502001'){$cfg_empr='japi';}
if($emisor=='0992178612001'){$cfg_empr='logu';}


chdir('../'.$cfg_empr.'/_lib');
include('../_cfg/config.php');
include('php_gene1.php');


// $comp=str_replace('&','',$comp);

$comp = preg_replace('/&[^; ]{0,6}.?/e', "((substr('\\0',-1) == ';') ? '\\0' : '&amp;'.substr('\\0',1))", $comp);

$comp =  utf8_encode($comp) ;

// echo $cfg_empr.$cfg_ruc;
// $sql_empr='select * from empr0';
// $res_empr=mysql_query($sql_empr,$link_vcrx);
// echo mysql_result($res_empr,0,'empr_descri');
	$claveacc='';
	$iddet=0;
	$item=array();
	$itemdes=array();
	$cant=array();
	$puni=array();
	$dcto=array();
	$ice=array();
	$iva=array();
	$irbp==array();
	
	$docum=array();
	$ptoem=array();
	$numer=array();
	$cair=array();
	$timp=array();
	$detalle2=array();

	$DOM1 = new DOMDocument('1.0', 'utf-8');
	$DOM2 = new DOMDocument('1.0', 'utf-8');

// $content = utf8_encode(file_get_contents('http://example.com/rss.xml'));
// $xml = simplexml_load_string($content);
// $content = utf8_encode($comp);
// $comp = simplexml_load_string($content);


	$DOM1->loadXML($comp);
	$ruc= $DOM1->getElementsByTagName('ruc')->item(0)->nodeValue;

	if($ruc!=$emisor){}

	$xdocu= $DOM1->getElementsByTagName('documento')->item(0)->nodeValue;
	$ptoe= $DOM1->getElementsByTagName('serie')->item(0)->nodeValue;
	$numero= $DOM1->getElementsByTagName('secuencial')->item(0)->nodeValue;

	{
		$ptoe=fillzero($ptoe,6);
		$numero=fillzero($numero,9);
	}


// 	$xmlfile='../../_gonza/'.$cfg_empr.'_'.$emisor.'_'.$xdocu.'_'.$ptoe.'_'.$numero.'.xml';
	$xmlfile='../../_gonza/'.$cfg_empr.'_'.$xdocu.'_'.$ptoe.'_'.$numero.'.xml';
	$cexml1 = fopen($xmlfile,'w');
	fputs($cexml1,$comp);
	fclose($cexml1);

// echo '*1';


	$direccion= $DOM1->getElementsByTagName('direccion')->item(0)->nodeValue;
	$tipoid= $DOM1->getElementsByTagName('tipoIdentificacionComprador')->item(0)->nodeValue;
	$fecha= $DOM1->getElementsByTagName('fechaEmision')->item(0)->nodeValue;
	$enti= $DOM1->getElementsByTagName('identificacionComprador')->item(0)->nodeValue;
	$razsoc= $DOM1->getElementsByTagName('razonSocialComprador')->item(0)->nodeValue;
	$direnti= $DOM1->getElementsByTagName('direccionComprador')->item(0)->nodeValue;
	$concepto= $DOM1->getElementsByTagName('observaciones')->item(0)->nodeValue;
	$email= $DOM1->getElementsByTagName('email')->item(0)->nodeValue;
	$status= $DOM1->getElementsByTagName('status')->item(0)->nodeValue;

	$detallex= $DOM1->getElementsByTagName('detalle');
	foreach($detallex as $detalley)
	{
		$xiddet++;
		foreach($detalley->childNodes as $detalle)
		{
			if($detalle->nodeName=='itemcodigo'){$item[$xiddet]=$detalle->nodeValue;}
			if($detalle->nodeName=='itemdescri'){$itemdes[$xiddet]=$detalle->nodeValue;}
			if($detalle->nodeName=='canti'){$cant[$xiddet]=$detalle->nodeValue;}
			if($detalle->nodeName=='punit'){$puni[$xiddet]=$detalle->nodeValue;}
			if($detalle->nodeName=='dcto'){$dcto[$xiddet]=$detalle->nodeValue;}
			if($detalle->nodeName=='ice'){$ice[$xiddet]=$detalle->nodeValue;}
			if($detalle->nodeName=='iva'){$iva[$xiddet]=$detalle->nodeValue;}
			if($detalle->nodeName=='irbp'){$irbp[$xiddet]=$detalle->nodeValue;}

// 			if($detalle->nodeName=='fecha'){$docum[$xiddet]=$detalle->nodeValue;}
			if($detalle->nodeName=='documento'){$docum[$xiddet]=$detalle->nodeValue;}
			if($detalle->nodeName=='serie'){$ptoem[$xiddet]=$detalle->nodeValue;}
			if($detalle->nodeName=='secuencial'){$numer[$xiddet]=$detalle->nodeValue;}
			if($detalle->nodeName=='base'){$cant[$xiddet]=$detalle->nodeValue;}
			if($detalle->nodeName=='porcentaje'){$puni[$xiddet]=$detalle->nodeValue;}
			if($detalle->nodeName=='codigo'){$cair[$xiddet]=$detalle->nodeValue;}
			if($detalle->nodeName=='impuesto'){$timp[$xiddet]=$detalle->nodeValue;}
			if($detalle->nodeName=='adicionales2')
				{
// 					$xml2=$DOM1->getElementsByTagName('comprobante')->item(0)->nodeValue;
					$xml2=$detalle->nodeValue;
					$DOM2->loadXML($xml2);

					$infoadic2='';
					$adicional2x= $DOM2->getElementsByTagName('adicional2');
					foreach($adicional2x as $adicional)
					{$infoadic2.='[['.trim($adicional2->getAttribute('nombre')).']]'.$adicional2->nodeValue.'||';}
				
					$detalle2[$xiddet]=$infoadic2;
				}
		}
	}

// echo '*2';

	$infoadic='';
	$adicionalx= $DOM1->getElementsByTagName('adicional');
	foreach($adicionalx as $adicional)
	{$infoadic.='[['.trim($adicional->getAttribute('nombre')).']]'.$adicional->nodeValue.'||';}


// VALIDACIONES

// echo '<br>'.$ruc;
// echo '<br>'.$xdocu;
// echo '<br>'.$ptoe.$numero;

	
	if($xdocu=="F" or $xdocu=="N")
	{
		$tabla1='vtas1';
		$tabla2='vtas2';
		$docu="FC10";
	}

	if($xdocu=="G")
	{
		$tabla1='guia1';
		$tabla2='guia2';
		$docu="GR10";
	}

	if($xdocu=="R")
	{
		$tabla1='retp1';
		$tabla2='retp2';
		$docu="RPRO";
	}

	{
		$sql_tab1 =' select * from '.$tabla1;
		$sql_tab1.=' where docu="'.$docu.'" ';
		$sql_tab1.=' and ptoe="'.$ptoe.'"';
		$sql_tab1.=' and numero="'.$numero.'"';
		$res_tab1=mysql_query($sql_tab1,$link_vcrx);		

		if(mysql_num_rows($res_tab1)==0)
		{
			$sql_inse='insert into '.$tabla1.'(docu,ptoe,numero)value("'.$docu.'","'.$ptoe.'","'.$numero.'")';
			$res_inse=mysql_query($sql_inse,$link_vcrx);
		}

		$res_tab1=mysql_query($sql_tab1,$link_vcrx);		
		$idnum1=mysql_result($res_tab1,0,'idnum1');
		
		$pasaporte='';
	
		$autornum=mysql_result($res_tab1,0,'autornum');
		$claveacc=mysql_result($res_tab1,0,'claveacc');
		$emailfec=mysql_result($res_tab1,0,'emailfec');
		$emailto=mysql_result($res_tab1,0,'emailto');
		
	
		if($autornum=="" or 1==1)
		{

			if($tipoid=="P")
			{
				$pasaporte=$enti;

				$slq_pspt='select * from enti0 where trim(enti_pasaporte)="'.trim($enti).'"';
				$res_pspt=mysql_query($slq_pspt,$link_vcrx);
				if(mysql_num_rows($res_pspt)==0){$enti=new_enti();}
				else{$enti=mysql_result($res_pspt,0,'enti_codigo');}
			}
			
			$sql_updt='insert into enti0(enti_codigo)value("'.$enti.'")';
			$res_updt=mysql_query($sql_updt,$link_vcrx);

			$sql_updt='update enti0 set enti_descri="'.$razsoc.'" where left(enti_codigo,10)="'.substr($enti,0,10).'"';
			$res_updt=mysql_query($sql_updt,$link_vcrx);
			
			$sql_updt='update enti0 set enti_razsoc="'.$razsoc.'" where left(enti_codigo,10)="'.substr($enti,0,10).'"';
			$res_updt=mysql_query($sql_updt,$link_vcrx);
			
			$sql_updt='update enti0 set enti_direccion="'.$direnti.'" where left(enti_codigo,10)="'.substr($enti,0,10).'"';
			$res_updt=mysql_query($sql_updt,$link_vcrx);
			
			$sql_updt='update enti0 set enti_matriz="'.$direnti.'" where left(enti_codigo,10)="'.substr($enti,0,10).'"';
			$res_updt=mysql_query($sql_updt,$link_vcrx);
			
			$sql_updt='update enti0 set enti_pasaporte="'.$pasaporte.'" where left(enti_codigo,10)="'.substr($enti,0,10).'"';
			$res_updt=mysql_query($sql_updt,$link_vcrx);
			
			$sql_updt='update enti0 set enti_email="'.$email.'" where left(enti_codigo,10)="'.substr($enti,0,10).'"';
			$res_updt=mysql_query($sql_updt,$link_vcrx);
			
			$sql_updt='update enti0 set enti_emailce="'.$email.'" where left(enti_codigo,10)="'.substr($enti,0,10).'"';
			$res_updt=mysql_query($sql_updt,$link_vcrx);
			
			/////////////////

			$sql_updt='update enti0 set enti_matriz="'.$direccion.'" where left(enti_codigo,10)="'.substr($ruc,0,10).'"';
			$res_updt=mysql_query($sql_updt,$link_vcrx);
			
// 			$sql_updt='update enti0 set enti_nomcom="'.$razsoc.'" where left(enti_codigo,10)="'.substr($enti,0,10).'"';
// 			$res_updt=mysql_query($sql_updt,$link_vcrx);
			
			/////////////////
			
			$sql_updt='update '.$tabla1.' set enti="'.$enti.'" where idnum1="'.$idnum1.'"';
			$res_updt=mysql_query($sql_updt,$link_vcrx);

			$sql_updt='update '.$tabla1.' set fecha="'.$fecha.'" where idnum1="'.$idnum1.'"';
			$res_updt=mysql_query($sql_updt,$link_vcrx);

			$sql_updt='update '.$tabla1.' set ptov="'.$ptoe.'" where idnum1="'.$idnum1.'"';
			$res_updt=mysql_query($sql_updt,$link_vcrx);

			$sql_updt='update '.$tabla1.' set status="'.$status.'" where idnum1="'.$idnum1.'"';
			$res_updt=mysql_query($sql_updt,$link_vcrx);

			$sql_updt='update '.$tabla1.' set concepto="'.$concepto.'" where idnum1="'.$idnum1.'"';
			$res_updt=mysql_query($sql_updt,$link_vcrx);

			$sql_updt='update '.$tabla1.' set claveacc="" where idnum1="'.$idnum1.'"';
			$res_updt=mysql_query($sql_updt,$link_vcrx);
			
			$sql_updt='update '.$tabla1.' set idate=now() where idnum1="'.$idnum1.'"';
			$res_updt=mysql_query($sql_updt,$link_vcrx);
			
			$sql_updt='delete from  '.$tabla2.' where idnum2="'.$idnum1.'"';
			$res_updt=mysql_query($sql_updt,$link_vcrx);

			
			$sql_updt='update '.$tabla1.' set infoadic="'.$infoadic.'" where idnum1="'.$idnum1.'"';
			$res_updt=mysql_query($sql_updt,$link_vcrx);
			
			{
			for($cont=1;$cont<=$xiddet;$cont++)
			{
				if($xdocu=='F')
				{
				$sql_updt='insert into item0(item_codigo)value("'.$item[$cont].'")';
				$res_updt=mysql_query($sql_updt,$link_vcrx);

				$itemdescri=$itemdes[$cont];
				if(mb_stristr($itemdescri,'/ CONT:'))
				{$itemdescri=substr($itemdescri,0,strpos($itemdescri,'/ CONT:'));}
					
				$sql_updt='update item0 set item_descri="'.$itemdescri.'" where item_codigo="'.$item[$cont].'"';
				$res_updt=mysql_query($sql_updt,$link_vcrx);

				$sql_updt='update item0 set item_codigov="'.$item[$cont].'" where item_codigo="'.$item[$cont].'"';
				$res_updt=mysql_query($sql_updt,$link_vcrx);

				$sql_updt='update item0 set item_puni="'.$puni[$cont].'" where item_codigo="'.$item[$cont].'"';
				$res_updt=mysql_query($sql_updt,$link_vcrx);

				$sql_updt='update item0 set item_iva="'.$iva[$cont].'" where item_codigo="'.$item[$cont].'"';
				$res_updt=mysql_query($sql_updt,$link_vcrx);
				}

///////////////////////////////////
				$sql_inse='insert into '.$tabla2.'(idnum2,iddet)value("'.$idnum1.'","'.$cont.'")';
				$res_inse=mysql_query($sql_inse,$link_vcrx);

				if($xdocu=='F' or $xdocu=='N')
				{
					
				$sql_updt='update '.$tabla2.' set item="'.$item[$cont].'" where idnum2="'.$idnum1.'" and iddet="'.$cont.'"';
				$res_updt=mysql_query($sql_updt,$link_vcrx);

				$detallefull=$itemdes[$cont];
				if($detalle2[$cont]!=""){$detallefull.='->'.$detalle2[$cont];}
				$sql_updt='update '.$tabla2.' set detalle="'.$detallefull.'" where idnum2="'.$idnum1.	'" and iddet="'.$cont.'"';
				$res_updt=mysql_query($sql_updt,$link_vcrx);

				$sql_updt='update '.$tabla2.' set cant="'.$cant[$cont].'" where idnum2="'.$idnum1.'" and iddet="'.$cont.'"';
				$res_updt=mysql_query($sql_updt,$link_vcrx);

				$sql_updt='update '.$tabla2.' set puni="'.$puni[$cont].'" where idnum2="'.$idnum1.'" and iddet="'.$cont.'"';
				$res_updt=mysql_query($sql_updt,$link_vcrx);

				$sql_updt='update '.$tabla2.' set dcto="'.$dcto[$cont].'" where idnum2="'.$idnum1.'" and iddet="'.$cont.'"';
				$res_updt=mysql_query($sql_updt,$link_vcrx);

				$sql_updt='update '.$tabla2.' set ice="'.$ice[$cont].'" where idnum2="'.$idnum1.'" and iddet="'.$cont.'"';
				$res_updt=mysql_query($sql_updt,$link_vcrx);

				$sql_updt='update '.$tabla2.' set iva="'.$iva[$cont].'" where idnum2="'.$idnum1.'" and iddet="'.$cont.'"';
				$res_updt=mysql_query($sql_updt,$link_vcrx);

				$sql_updt='update '.$tabla2.' set irbp="'.$irbp[$cont].'" where idnum2="'.$idnum1.'" and iddet="'.$cont.'"';
				$res_updt=mysql_query($sql_updt,$link_vcrx);
				}

				
				if($xdocu=='R')
				{
				if($docum[$cont]=='F'){$documd='FP10';};
				if($docum[$cont]=='L'){$documd='FP11';};
				$sql_updt='update '.$tabla2.' set docum="'.$documd.'" where idnum2="'.$idnum1.'" and iddet="'.$cont.'"';
				$res_updt=mysql_query($sql_updt,$link_vcrx);

				$sql_updt='update '.$tabla2.' set ptoem="'.$ptoem[$cont].'" where idnum2="'.$idnum1.'" and iddet="'.$cont.'"';
				$res_updt=mysql_query($sql_updt,$link_vcrx);

				$sql_updt='update '.$tabla2.' set numer="'.$numer[$cont].'" where idnum2="'.$idnum1.'" and iddet="'.$cont.'"';
				$res_updt=mysql_query($sql_updt,$link_vcrx);

				$sql_updt='update '.$tabla2.' set cant="'.$cant[$cont].'" where idnum2="'.$idnum1.'" and iddet="'.$cont.'"';
				$res_updt=mysql_query($sql_updt,$link_vcrx);

				$sql_updt='update '.$tabla2.' set puni="'.$puni[$cont].'" where idnum2="'.$idnum1.'" and iddet="'.$cont.'"';
				$res_updt=mysql_query($sql_updt,$link_vcrx);

				$sql_updt='update '.$tabla2.' set cair="'.$cair[$cont].'" where idnum2="'.$idnum1.'" and iddet="'.$cont.'"';
				$res_updt=mysql_query($sql_updt,$link_vcrx);

				$sql_updt='update '.$tabla2.' set detalle="'.$timp[$cont].'" where idnum2="'.$idnum1.'" and iddet="'.$cont.'"';
				$res_updt=mysql_query($sql_updt,$link_vcrx);
				}
				
			}
			}

			$claveacc=gen_claveacc($docu,$idnum1);
			if(strlen($claveacc)==49)
			{
				gen_cexml($claveacc);
// 				mail_ce($claveacc);
			}
		}

		
		if($autornum!="")
		{	
			if($emailfec=="")
			{mail_ce($claveacc);}
		}
		
	}	

echo '<clave>'.$claveacc.'</clave>';
echo '<br>';
echo '<a href="http://'.$cfg_empr.'.vcrxol.com/print1.php?clave='.$claveacc.'">'.$claveacc.'</a>';
echo '<br>';
if($autornum!="")
{echo '<autorizacion>'.$autornum.'</autorizacion>';}

return;	
	
