<?php
require_once('clases/xajax/xajax_core/xajax.inc.php');
$xajax = new xajax();
//$xajax->setFlag('debug',true); 
$xajax->configure('javascript URI', 'clases/xajax/');


function xExportar($varCli, $varVen, $varRut, $varTip, $varIni, $varFin) {
	$obj = new clsCXC_Cobrar($var[0],$var[1],$var[2],$var[3],$var[4]);
	
	$varCli = (isset($varCli) && $varCli<>'')? $varCli:"NULL";
	$varVen = ($varVen<>"")?"\"(".$varVen.")\"":"NULL";
	$varRut = ($varRut<>"")?"\"(".str_replace("\\","",$varRut).")\"":"NULL";
	$varTip = (isset($varTip) && $varTip<>'')? $varTip:"NULL";
	$varIni = (isset($varIni) && $varIni<>'')? "'".FechaMySql($varIni)."'":"NULL";
	$varFin = (isset($varFin) && $varFin<>'')? "'".FechaMySql($varFin)."'":"NULL";
	$varFie = (isset($varField) && $varField<>'')? "'$varField'":"NULL";
	$varOrd = (isset($varOrder) && $varOrder<>'')? "'$varOrder'":"NULL";
	
	$sql = "call spQuery_Cuentas_Cobrar($varCli, $varVen, $varRut, $varTip, $varIni, $varFin, $varFie, $varOrd);";
	
	$_SESSION["expor_sql_1"] =  $sql;
	$_SESSION["expor_sql_2"] = NULL;
	$varTitulo = $obj->varTitulo;	
	$objResponse=new xajaxResponse();
    $objResponse->redirect("export.php?page=$varTitulo");
    return $objResponse;
	}

function xBuscar($varCli, $varCadVen, $varCadRut, $varTip, $varIni, $varFin, $varField, $varOrder) {
	$var = VarServer("MYSQLI");
	$obj = new clsCXC_Cobrar($var[0],$var[1],$var[2],$var[3],$var[4]);		
	$varTabla = $obj->GridDatos($varCli, $varCadVen, $varCadRut, $varTip, $varIni, $varFin, $varField, $varOrder);
	$respuestaXajax = new xajaxResponse();
	$respuestaXajax->assign("divDatos", "innerHTML", utf8_encode($varTabla));
	return $respuestaXajax;
	}

function xFormuPago($varCod) {
	$var = VarServer("MYSQLI");
	$obj = new clsCXC_Cobrar($var[0],$var[1],$var[2],$var[3],$var[4]);
	$varTabla = $obj->FormuPago($varCod);
	$respuestaXajax = new xajaxResponse();
	$respuestaXajax->assign("divForm", "style.display", "none");
	$respuestaXajax->assign("divFormReg", "innerHTML", utf8_encode($varTabla));
	$respuestaXajax->script("UnTip();");
	return $respuestaXajax;
	}

function xRegresar() {
	$var = VarServer("MYSQLI");
	$obj = new clsCXC_Cobrar($var[0],$var[1],$var[2],$var[3],$var[4]);
	$respuestaXajax = new xajaxResponse();
	$respuestaXajax->assign("divForm", "style.display", "block");
	$respuestaXajax->assign("divFormReg", "innerHTML", "");
	return $respuestaXajax;
	}
function xGrabar($varForm) {
	$var = VarServer("MYSQLI");
	$obj = new clsCXC_Cobrar($var[0],$var[1],$var[2],$var[3],$var[4]);
	$varResul = $obj->ProcesoGrabar($varForm);
	$respuestaXajax = new xajaxResponse();
	if ($varResul=="OK") {
		$respuestaXajax = new xajaxResponse();
		$respuestaXajax->assign("divForm", "style.display", "block");
		$respuestaXajax->assign("divFormReg", "innerHTML", "");
		}
	else
		$respuestaXajax->alert("ERROR AL PROCESAR DATOS...!!!!!\n====================================\n".$varResul."\nVERIFIQUE LOS DATOS POR FAVOR");
		
	return $respuestaXajax;
	}
	
$xajax->register(XAJAX_FUNCTION, 'seleccionar_cliente');
$xajax->register(XAJAX_FUNCTION, 'seleccionar_tipo_docpago');

$xajax->register(XAJAX_FUNCTION, 'xBuscar');
$xajax->register(XAJAX_FUNCTION, 'xFormuPago');
$xajax->register(XAJAX_FUNCTION, 'xRegresar');
$xajax->register(XAJAX_FUNCTION, 'xGrabar');
$xajax->register(XAJAX_FUNCTION, 'xExportar');

$xajax->processRequest();
$xajax->printJavascript("clases/xajax");
?>
<script language="javascript">		
	function xBuscarJS(varField, varOrder) {
		var varCli = xajax.$("ccod").value;
		var varTip = xajax.$("tcod").value;
		var varIni = xajax.$("fini").value;
		var varFin = xajax.$("ffin").value;
		var varVen = xajax.$("vcod");
		var varRut = xajax.$("rcod");
		var varCadVen = "";
		var varCadRut = "";
		
		//Capturamos relacion de vendedores
		for (var i = 0; i < varVen.length; i++)	{  
			if(varCadVen=="") 
				varCadVen =  varVen.options[i].value;
			else 
				varCadVen =  varCadVen+','+varVen.options[i].value;			
			}
		//Capturamos relacion de rutas
		for (var i = 0; i < varRut.length; i++)	{  
			if(varCadRut=="") 
				varCadRut =  "'"+varRut.options[i].value+"'";
			else 
				varCadRut =  varCadRut+",'"+varRut.options[i].value+"'";			
			}
		if (varCli=="" && varCadVen=="" && varCadRut=="" && varTip=="" && varIni=="" && varFin=="") {
			alert("ERROR AL PROCESAR DATOS...!!!!!\nDEBE UTILIZAR AL MENOS UN PARAMETRO DE BUSQUEDA");  
			xajax.$("ccod").focus();
			return (false); 
			}
		else {
			xajax_xBuscar(varCli, varCadVen, varCadRut, varTip, varIni, varFin, varField, varOrder);		
			}
		}

	function xExportarJS() {
		var varCli = xajax.$("ccod").value;
		var varTip = xajax.$("tcod").value;
		var varIni = xajax.$("fini").value;
		var varFin = xajax.$("ffin").value;
		var varVen = xajax.$("vcod");
		var varRut = xajax.$("rcod");
		var varCadVen = "";
		var varCadRut = "";
		
		//Capturamos relacion de vendedores
		for (var i = 0; i < varVen.length; i++)	{  
			if(varCadVen=="") 
				varCadVen =  varVen.options[i].value;
			else 
				varCadVen =  varCadVen+','+varVen.options[i].value;			
			}
		//Capturamos relacion de rutas
		for (var i = 0; i < varRut.length; i++)	{  
			if(varCadRut=="") 
				varCadRut =  "'"+varRut.options[i].value+"'";
			else 
				varCadRut =  varCadRut+",'"+varRut.options[i].value+"'";			
			}
		if (varCli=="" && varCadVen=="" && varCadRut=="" && varTip=="" && varIni=="" && varFin=="") {
			alert("ERROR AL PROCESAR DATOS...!!!!!\nDEBE UTILIZAR AL MENOS UN PARAMETRO DE BUSQUEDA");  
			xajax.$("ccod").focus();
			return (false); 
			}
		else {
			xajax_xExportar(varCli, varCadVen, varCadRut, varTip, varIni, varFin);
			}		
		}
	
	function xImprimirJS() {
		var varCli = xajax.$("ccod").value;
		var varTip = xajax.$("tcod").value;
		var varIni = xajax.$("fini").value;
		var varFin = xajax.$("ffin").value;
		var varVen = xajax.$("vcod");
		var varRut = xajax.$("rcod");
		var varCadVen = "";
		var varCadRut = "";
		
		//Capturamos relacion de vendedores
		for (var i = 0; i < varVen.length; i++)	{  
			if(varCadVen=="") 
				varCadVen =  varVen.options[i].value;
			else 
				varCadVen =  varCadVen+','+varVen.options[i].value;			
			}
		//Capturamos relacion de rutas
		for (var i = 0; i < varRut.length; i++)	{  
			if(varCadRut=="") 
				varCadRut =  "'"+varRut.options[i].value+"'";
			else 
				varCadRut =  varCadRut+",'"+varRut.options[i].value+"'";			
			}
		if (varCli=="" && varCadVen=="" && varCadRut=="" && varTip=="" && varIni=="" && varFin=="") {
			alert("ERROR AL PROCESAR DATOS...!!!!!\nDEBE UTILIZAR AL MENOS UN PARAMETRO DE BUSQUEDA");  
			xajax.$("ccod").focus();
			return (false); 
			}
		else {
			var Ruta = 'print/print_cxc_planilla_cobranza.php?ccod='+varCli+'&vcod='+varCadVen+'&rcod='+varCadRut+'&ctip='+varTip+'&fini='+varIni+'&ffin='+varFin;
			testwindow= window.open (Ruta, "print_cxc_planilla_cobranza", "location=no,status=no,toolbar=no,scrollbars=1,width=1100,height=500");
			}		
		}
		
	function xGrabarJS() {
		var varPatronFec = "^([0-9]{2})/([0-9]{2})/([0-9]{4})$";
		var expreg = new RegExp (varPatronFec);	
	
		if (xajax.$("tipo") && xajax.$("tipo").value=="") {
			alert("ERROR AL PROCESAR DATOS...!!!!!\nDEBE SELECCIONAR UN TIPO DE DOCUMENTO DE PAGO");  
			xajax.$("tipo").focus();
			return (false); 
			}
		else if (xajax.$("txtnum") && xajax.$("txtnum").value=="") {
			alert("ERROR AL PROCESAR DATOS...!!!!!\nDEBE ESPECIFICAR UN NUMERO DE DOCUMENTO DE PAGO");  
			xajax.$("txtnum").focus();
			return (false); 
			}
		else if (expreg.test(xajax.$("femi").value)==false) {
			alert("ERROR AL PROCESAR DATOS...!!!!!\nDEBE SELECCIONAR UNA FECHA VALIDA");
			xajax.$("femi").focus()
			return (false); 
			}
		else if (FechaEsMayor(xajax.$("txtemi").value, xajax.$("femi").value)){	
			alert("ERROR AL PROCESAR DATOS...!!!!!\nLA FECHA DE PAGO NO PUEDE SER MENOR A LA FECHA DE EMISION DEL DOCUMENTO");
			xajax.$("femi").focus()
			return (false);
			}
		else if (xajax.$("txtpago") && xajax.$("txtpago").value=="") { 
			alert("ERROR AL PROCESAR DATOS...!!!!!\nDEBE INGRESAR UN MONTO VALIDO");
			xajax.$("txtpago").focus()
			return (false); 
			}	
		else if (parseFloat(xajax.$("txtpago").value) > parseFloat(xajax.$("txtsal").value)) { 
			alert("ERROR AL PROCESAR DATOS...!!!!!\nEL MONTO A PAGAR ("+xajax.$("txtpago").value+") NO PUEDE SER MAYOR AL MONTO DEL SALDO ("+xajax.$("txtsal").value+")");
			xajax.$("txtpago").focus()
			return (false); 
			}
		else {
			if (confirm("¿DESE REGISTRAR EL PAGO?")) {
				xajax_xGrabar(xajax.getFormValues('formPago'));		
				}
			}
		}
		
	function xFormPagoJS(varCod, varTab) {
		UnTip();
		xajax_xFormuPago(varCod);
		EliminarFilaTabla(varTab)	
		}
</script>
<?php	
function MyTable($obj, $Titulo, $Opcion, $Valor) {	
	if(!isset($Opcion)) {
		echo "<div id=\"divForm\">";
		echo $obj->FormuBusqueda();
		echo "<div id=\"divDatos\">";
		//echo $obj->GridDatos();		
		echo "</div>";
		echo "</div>";
		echo "<div id=\"divFormReg\">";
		echo "</div>";
		}
	} 
?>