<?php
require_once('../clases/xajax/xajax_core/xajax.inc.php');
$xajax = new xajax();
//$xajax->setFlag('debug',true); 
$xajax->configure('javascript URI', '../clases/xajax/');
$xajax->setCharEncoding("ISO-8859-1");
function xExportar($varForm) {
	$varCod = (isset($varForm["cod"]) && $varForm["cod"]<>'')? $varForm["cod"]:"NULL";
	$varVeh = (isset($varForm["vcod"]) && $varForm["vcod"]<>'')? $varForm["vcod"]:"NULL";
	$varCon = (isset($varForm["ccod"]) && $varForm["ccod"]<>'')? $varForm["ccod"]:"NULL";
	$varIni = (isset($varForm["fini"]) && $varForm["fini"]<>'')? "'".FechaMySql($varForm["fini"])."'":"NULL";
	$varFin = (isset($varForm["ffin"]) && $varForm["ffin"]<>'')? "'".FechaMySql($varForm["ffin"])."'":"NULL";
	
	$sql = "call spQuery_Asignacion($varCod, $varVeh, $varCon, $varIni, $varFin,  NULL, NULL);";
	$_SESSION["expor_sql_1"] =  $sql;
	$_SESSION["expor_sql_2"] = NULL;
	$varTitulo = (isset($varForm["titu"]))?$varForm["titu"]:"Reporte";	
	$objResponse=new xajaxResponse();
    $objResponse->redirect("../export.php?page=$varTitulo");
    return $objResponse;
	}

function xBuscar($varFormm, $varField, $varOrder) {
	$var = VarServer("MYSQLI");
	$obj = new clsAsignacionVenta($var[0],$var[1],$var[2],$var[3],$var[4]);	
	$varTabla = $obj->GridDatos($varFormm, $varField, $varOrder);
	$respuestaXajax = new xajaxResponse();
	$respuestaXajax->assign("divDatos", "innerHTML", $varTabla);
	$variable2="ResaltarSeleccionado()";
	$respuestaXajax->script($variable2); 
	return $respuestaXajax;
	}

function xFormuRegistroNew($varDia, $varVen, $varRut) {
	$var = VarServer("MYSQLI");
	$obj = new clsAsignacionVenta($var[0],$var[1],$var[2],$var[3],$var[4]);	
	$varTabla = $obj->FormuRegistro($varDia, $varVen, $varRut);
	$respuestaXajax = new xajaxResponse();
	if($varTabla=="ERROR") {
		$respuestaXajax->alert("ERROR AL CONSULTAR!!!!\nNO EXIXTEN REGISTROS QUE MOSTRAR"); 
		}
	else {
		$respuestaXajax->assign("divForm", "innerHTML", $varTabla);
		$variable = "var TabbedPanels1 = new Spry.Widget.TabbedPanels('TabbedPanels1')";
		$variable2="PMA_markRowsInit()";
		$respuestaXajax->script($variable); 
		$respuestaXajax->script($variable2); 
		}
	return $respuestaXajax;
	}
	
function xFormuRegistroEdit($varCod) {
	$var = VarServer("MYSQLI");
	$obj = new clsAsignacionVenta($var[0],$var[1],$var[2],$var[3],$var[4]);	
	$varTabla = $obj->FormuRegistroEdit($varCod);
	$respuestaXajax = new xajaxResponse();
	$respuestaXajax->assign("divForm", "innerHTML", $varTabla);
	$variable = "var TabbedPanels1 = new Spry.Widget.TabbedPanels('TabbedPanels1')";
	$variable2="ResaltarSeleccionado()";
	$respuestaXajax->script($variable); 
	$respuestaXajax->script($variable2); 
	return $respuestaXajax;
	}
	
function xFormuRegistroBusqueda($varOpt, $varCod) {
	$var = VarServer("MYSQLI");
	$obj = new clsAsignacionVenta($var[0],$var[1],$var[2],$var[3],$var[4]);
	$varTabla = $obj->FormuRegistroBusqueda($varOpt, $varCod);
	$respuestaXajax = new xajaxResponse();
	$respuestaXajax->assign("divForm", "innerHTML", $varTabla);
	return $respuestaXajax;
	}

function xFormuDetalle($varCod) {
	$var = VarServer("MYSQLI");
	$obj = new clsAsignacionVenta($var[0],$var[1],$var[2],$var[3],$var[4]);
	$varTabla = $obj->FormuDetalle($varCod);
	$respuestaXajax = new xajaxResponse();
	$respuestaXajax->assign("divForm", "innerHTML", $varTabla);
	$variable = "var TabbedPanels1 = new Spry.Widget.TabbedPanels('TabbedPanels1')";
	$variable2="ResaltarSeleccionado()";
	$respuestaXajax->script($variable);
	$respuestaXajax->script($variable2); 
	return $respuestaXajax;
	}
	
function xRegresar() {
	$var = VarServer("MYSQLI");
	$obj = new clsAsignacionVenta($var[0],$var[1],$var[2],$var[3],$var[4]);
	$varTabla.= $obj->FormuRegistroBusqueda();
	$varTabla.= "<div id=\"divDatos\">";
	//$varTabla.= $obj->GridDatos();		
	$varTabla.= "</div>";
	$respuestaXajax = new xajaxResponse();
	$respuestaXajax->assign("divForm", "innerHTML", $varTabla);
	return $respuestaXajax;
	}

function xRegresarPrincipal() {
	$var = VarServer("MYSQLI");
	$obj = new clsAsignacionVenta($var[0],$var[1],$var[2],$var[3],$var[4]);
	$varTabla.= $obj->FormuBusqueda();
	$varTabla.= "<div id=\"divDatos\">";
	//$varTabla.= $obj->GridDatos();		
	$varTabla.= "</div>";
	$respuestaXajax = new xajaxResponse();
	$respuestaXajax->assign("divForm", "innerHTML", $varTabla);
	return $respuestaXajax;
	}
function xGrabar($varForm) {
	$var = VarServer("MYSQLI");
	$obj = new clsAsignacionVenta($var[0],$var[1],$var[2],$var[3],$var[4]);
	$varIde = $obj->ProcesoGrabar($varForm);
	$respuestaXajax = new xajaxResponse();
	if ($varIde) {		
		$varTabla =  "<div id=\"divForm\">";
		$varTabla.=  $obj->FormuBusqueda();
		$varTabla.=  "<div id=\"divDatos\">";
		$varTabla.=  "</div>";
		$varTabla.=  "</div>";
		$respuestaXajax->assign("divForm", "innerHTML", $varTabla);
		$respuestaXajax->alert($varIde);
		return $respuestaXajax;
		}
	else {
		$respuestaXajax->alert("ERROR AL PROCESAR DATOS...!!!!!\n====================================\n".$varResul."\nVERIFIQUE LOS DATOS POR FAVOR");		
		return $respuestaXajax;
		}
	}
	
function xEliminar($varCod) {
	$var = VarServer("MYSQLI");
	$obj = new clsAsignacionVenta($var[0],$var[1],$var[2],$var[3],$var[4]);
	$varResul = $obj->ProcesoEliminar($varCod);	
	$respuestaXajax = new xajaxResponse();
	if ($varResul=="OK") {
		$respuestaXajax->alert("ASIGNACION ELIMINADA CORRECTAMENTE");
		}
	else
		$respuestaXajax->alert("ERROR AL PROCESAR DATOS...!!!!!\n====================================\n".$varResul."\nVERIFIQUE LOS DATOS POR FAVOR");
		
	return $respuestaXajax;
	}


$xajax->register(XAJAX_FUNCTION, 'seleccionar_vehiculo');
$xajax->register(XAJAX_FUNCTION, 'seleccionar_conductor');
$xajax->register(XAJAX_FUNCTION, 'seleccionar_repartidor_asignacion');
$xajax->register(XAJAX_FUNCTION, 'seleccionar_gasto_asignacion');

$xajax->register(XAJAX_FUNCTION, 'xBuscar');
$xajax->register(XAJAX_FUNCTION, 'xFormuDetalle');
$xajax->register(XAJAX_FUNCTION, 'xFormuRegistroBusqueda');
$xajax->register(XAJAX_FUNCTION, 'xFormuRegistroNew');
$xajax->register(XAJAX_FUNCTION, 'xFormuRegistroEdit');
$xajax->register(XAJAX_FUNCTION, 'xRegresar');
$xajax->register(XAJAX_FUNCTION, 'xRegresarPrincipal');
$xajax->register(XAJAX_FUNCTION, 'xGrabar');
$xajax->register(XAJAX_FUNCTION, 'xEliminar');
$xajax->register(XAJAX_FUNCTION, 'xExportar');


$xajax->processRequest();
$xajax->printJavascript("../clases/xajax");


?>
<script language="javascript">	
	function xBuscarJS(varField, varOrder) {
		if (xajax.$("cod").value=="" && xajax.$("vcod").value=="" && xajax.$("ccod").value=="" && xajax.$("fini").value=="" && xajax.$("ffin").value=="") { 
			alert("ERROR AL PROCESAR DATOS...!!!!!\nDEBE ESPECIFICAR AL MENOS UN PARAMETRO DE BUSQUEDA");
			xajax.$("cod").focus()
			return (false); 
			}
		else {
			xajax_xBuscar(xajax.getFormValues('form'), varField, varOrder);
			}				
		}	
	
	function xExportarJS() {
		if (xajax.$("cod").value=="" && xajax.$("vcod").value=="" && xajax.$("ccod").value=="" && xajax.$("fini").value=="" && xajax.$("ffin").value=="") { 
			alert("ERROR AL PROCESAR DATOS...!!!!!\nDEBE ESPECIFICAR AL MENOS UN PARAMETRO DE BUSQUEDA");
			xajax.$("cod").focus()
			return (false); 
			}
		else {
			xajax_xExportar(xajax.getFormValues('form'));
			}			
		}
		
	function xFormuRegistroNewJS() {
		var varDia = xajax.$("eini").value;
		var varVen = xajax.$("pcod");
		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 (xajax.$("eini") && xajax.$("eini").value=="") { 
			alert("ERROR AL PROCESAR DATOS...!!!!!\nDEBE SELECCIONAR UNA FECHA");
			xajax.$("eini").focus()
			return (false); 
			}
		else {
			xajax_xFormuRegistroNew(varDia, varCadVen, varCadRut);
			}
		}
	
	function xFormuRegistroEditJS(varCod) {
		xajax_xFormuRegistroEdit(varCod);
		}
	function xGuardarJS(varOpcion) {
		var varFlagVenta = 0;
		var varFlagRepar = 0;
		var varFlagCosto = 0;
		
		var varErrorCab = "=================================================\nERROR AL REGISTRAR ASIGNACION...!!!!\n=================================================\n";
		var varErrorDet = "";
		
		if (varOpcion=="NEW") {
			//Para validar documentos seleccionados
			for(i=0; i < document.form.elements.length; i++) {
				if (document.form.elements[i].type == "checkbox" && document.form.elements[i].checked) {			
					varFlagVenta++;
					}
				}
			}
		else {
			varFlagVenta = 1;
			}
		//Para validar repartidores seleccionados
		var varNumRep = document.getElementById('num2');
		var varFlagReparTmp = 0;
		for (i=1; i<=varNumRep.value;i++) {
			var varCod = document.getElementById('cod2'+i+'');
			var varDes = document.getElementById('nom2'+i+'');
			var varCos = document.getElementById('cos2'+i+'');			
			if(varCod) {
				varFlagRepar++;				
				if(varCod.value=="" && varFlagReparTmp==0) {
					varErrorDet+= "FALTA SELECCIONAR ALGUN REPARTIDOR\n";
					varFlagReparTmp++;
					}
				if(parseFloat(varCos.value) <= 0 || varCos.value=="" && varFlagReparTmp==0) {
					varErrorDet+= "REPARTIDOR : " + varCod.value + ' - ' + varDes.value + ' -> DEBE ESPECIFICAR EL MONTO\n';
					}
				}
			}
		//Para validar Costos seleccionados
		var varNumRep = document.getElementById('num3');
		var varFlagCostoTmp = 0;
		for (i=1; i<=varNumRep.value;i++) {
			var varCod = document.getElementById('cod3'+i+'');
			var varDes = document.getElementById('nom3'+i+'');
			var varCos = document.getElementById('cos3'+i+'');			
			if(varCod) {
				varFlagCosto++;				
				if(varCod.value=="" && varFlagCostoTmp==0) {
					varErrorDet+= "FALTA SELECCIONAR ALGUN CONCEPTO DE COSTO\n";
					varFlagCostoTmp++;
					}
				if(parseFloat(varCos.value) <= 0 || varCos.value=="" && varFlagCostoTmp==0) {
					varErrorDet+= "COSTO : " + varCod.value + ' - ' + varDes.value + ' -> DEBE ESPECIFICAR EL MONTO\n';
					}
				}
			}
			
		if (varFlagVenta<=0) {
			varErrorDet+="DEBE SELECCIONAR AL MENOS UN DOCUMENTO\n";
			}
		if (varFlagRepar<=0) {
			varErrorDet+="DEBE AGREGAR AL MENOS UN PERSONAL DE REPARTO\n";
			}
		if (xajax.$("femi") && xajax.$("femi").value=="") {
			varErrorDet+="DEBE ESPECIFICAR UNA FECHA DE REPARTO\n";
			}
		if (xajax.$("vcod") && xajax.$("vcod").value=="") {
			varErrorDet+="DEBE SELECCIONAR UN VEHICULO\n";
			}
		if (xajax.$("ccod") && xajax.$("ccod").value=="") {
			varErrorDet+="DEBE SELECCIONAR UN CONDUCTOR\n";
			}
		if (varErrorDet!="") {
			alert(varErrorCab+varErrorDet);
			}
		else {
			if (varOpcion=="NEW") {
				var varMsj = "¿DESEA GENERAR LA ASIGNACION DE FECHA "+xajax.$("femi").value+"?";
				}
			else {
				var varMsj = "¿DESEA ACTUALIZAR LA ASIGNACION Nro "+xajax.$("cod").value+"?"
				}
			if (confirm(varMsj)) {
				xajax_xGrabar(xajax.getFormValues('form'));		
				}
			}
		}
	
	function xEliminarJS(varCod, varFecha, varVCod, varVNom, varCCod, varCNom, varTab) {
		UnTip();
		if(_confirm('&iquest;ESTA SEGURO DE ELIMINAR ESTA ASIGNACION?\n====================================\nNro. Asig.\t: '+varCod+'\nVehiculo \t\t: '+ varVCod+' - '+varVNom+'\nConductor\t: '+varCCod+' - '+ varCNom)) {			
			xajax_xEliminar(varCod);
			EliminarFilaTabla(varTab)
			}
		}
		
	function FormuRegistroBusquedaJS(varOpt, varCod) {
		UnTip();
		xajax_xFormuRegistroBusqueda(varOpt, varCod);		
		}
	function FormuDetalleJS(varCod) {
		UnTip();
		var Ruta = 'print/print_detalle_pedido.php?ide='+varCod;
		testwindow= window.open (Ruta, "Detalle_Pedido", "location=no,status=no,toolbar=no,scrollbars=1,width=800,height=550");	
		}
</script>

<?php		
function MyTable($obj, $varTitulo, $Opcion, $Valor) {
	echo "<div id=\"divForm\">";
	echo $obj->FormuBusqueda();
	echo "<div id=\"divDatos\">";
	//echo $obj->GridDatos();		
	echo "</div>";
	echo "</div>";
	} 
?>