// JavaScript Document
/*
autor: MIguel Quiroz Martinez
Descripcion: Contiene todas las funciones ajax que se pueden utilizar en el sitio a partir de mi modificacion
*/
function nuevoAjax()
{ 
	/* Crea el objeto AJAX. Esta funcion es generica para cualquier utilidad de este tipo, por
	lo que se puede copiar tal como esta aqui */
	var xmlhttp=false;
	try
	{
		// Creacion del objeto AJAX para navegadores no IE
		xmlhttp=new ActiveXObject("Msxml2.XMLHTTP");
	}
	catch(e)
	{
		try
		{
			// Creacion del objet AJAX para IE
			xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
		}
		catch(E)
		{
			if (!xmlhttp && typeof XMLHttpRequest!='undefined') xmlhttp=new XMLHttpRequest();
		}
	}
	return xmlhttp; 
}

//buscar marcas
function cargarMarcas()
{
	// Obtengo el select que el usuario modifico
	var selectOrigen=document.getElementById("categoria");
	// Obtengo la opcion que el usuario selecciono
	var opcionSeleccionada=selectOrigen.options[selectOrigen.selectedIndex].value;
	//para el combo modelo
	nuevaOpcion=document.createElement("option"); 
	nuevaOpcion.value=0; 
	nuevaOpcion.innerHTML="- Seleccione una marca -";
	select3=document.getElementById("cmbmodelo");		
	select3.length=0;		
	select3.appendChild(nuevaOpcion);	
	select3.disabled=true;
	//oculto la opcion de otros
	document.getElementById("otroModelo").style.display='none';	
	document.getElementById("otraMarca").style.display='none';
	// Si el usuario eligio la opcion "Elige", no voy al servidor y pongo los selects siguientes en estado "Selecciona opcion..."
	if(opcionSeleccionada==0)
	{
		//para el combo marca
		select2=document.getElementById("cmbmarca");
		select2.length=0;
		var nuevaOpcion=document.createElement("option"); 
		nuevaOpcion.value=0; 
		nuevaOpcion.innerHTML="- Seleccione una categoria -";
		select2.appendChild(nuevaOpcion);	
		select2.disabled=true;
		//para el combo modelo
		nuevaOpcion=document.createElement("option"); 
		nuevaOpcion.value=0; 
		nuevaOpcion.innerHTML="- Seleccione una categoria -";
		select3=document.getElementById("cmbmodelo");		
		select3.length=0;		
		select3.appendChild(nuevaOpcion);	
		select3.disabled=true;
	}
	else 
	{
		// Obtengo el elemento del select que debo cargar
		var selectDestino=document.getElementById("cmbmarca");
		// Creo el nuevo objeto AJAX y envio al servidor el ID del select a cargar y la opcion seleccionada del select origen
		var ajax=nuevoAjax();
		//alert(opcionSeleccionada + " ----  " + idSelectDestino + " --- " + idSelectOrigen );
		ajax.open("GET", "marca_modelo.php?select=categoria&opcion="+opcionSeleccionada, true);
		ajax.onreadystatechange=function() 
		{ 
			if (ajax.readyState==1)
			{
				// Mientras carga elimino la opcion "Selecciona Opcion..." y pongo una que dice "Cargando..."
				selectDestino.length=0;
				var nuevaOpcion=document.createElement("option"); nuevaOpcion.value=0; nuevaOpcion.innerHTML="Cargando Marcas...";
				selectDestino.appendChild(nuevaOpcion); selectDestino.disabled=true;	
			}
			if (ajax.readyState==4)
			{
				//alert(ajax.responseText);
				selectDestino.parentNode.innerHTML=ajax.responseText;				
			} 
		}
		ajax.send(null);
	}
}
//buscar MOdelos
function cargaModelo()
{
	// Obtengo el select que el usuario modifico
	var selectCategoria=document.getElementById("categoria");
	var selectMarca=document.getElementById("cmbmarca");
	// Obtengo la opcion que el usuario selecciono
	var opcionCategoria=selectCategoria.options[selectCategoria.selectedIndex].value;
	var opcionMarca=selectMarca.options[selectMarca.selectedIndex].value;	
	var selectM=document.getElementById("cmbmodelo");
	var opcion=selectM.options[selectM.selectedIndex].value;
	//oculto la opcion de otros
	document.getElementById("otroModelo").style.display='none';
	document.getElementById("otraMarca").style.display='none';
	// Si el usuario eligio la opcion "Elige", no voy al servidor y pongo los selects siguientes en estado "Selecciona opcion..."
	if(opcionMarca==0)
	{
		//para el combo modelo
		nuevaOpcion=document.createElement("option"); 
		nuevaOpcion.value=0; 
		nuevaOpcion.innerHTML="- Seleccione una Marca -";
		select3=document.getElementById("cmbmodelo");		
		select3.length=0;		
		select3.appendChild(nuevaOpcion);	
		select3.disabled=true;
	}
	else 
	{
		//pregunto si opcion marca es otro
		if(opcionMarca==1)
		{
			document.getElementById("otroModelo").style.display='block';
			document.getElementById("otroModelo").value="";
			document.getElementById("otraMarca").style.display='block';
			document.getElementById("otraMarca").value="";
			//para el combo modelo
			nuevaOpcion=document.createElement("option"); 
			nuevaOpcion.value=0; 
			nuevaOpcion.innerHTML="- Escriba el Modelo -";
			select3=document.getElementById("cmbmodelo");		
			select3.length=0;		
			select3.appendChild(nuevaOpcion);	
			select3.disabled=true;
		}
		else
		{
			document.getElementById("otroModelo").style.display='none';
			document.getElementById("otraMarca").style.display='none';
			// Obtengo el elemento del select que debo cargar
			var selectDestino=document.getElementById("cmbmodelo");
			// Creo el nuevo objeto AJAX y envio al servidor el ID del select a cargar y la opcion seleccionada del select origen
			var ajax=nuevoAjax();
			//alert(opcionSeleccionada + " ----  " + idSelectDestino + " --- " + idSelectOrigen );
			ajax.open("GET", "marca_modelo.php?select=marca&opcionC="+opcionCategoria+"&opcionM="+opcionMarca, true);
			ajax.onreadystatechange=function() 
			{ 
				if (ajax.readyState==1)
				{
					// Mientras carga elimino la opcion "Selecciona Opcion..." y pongo una que dice "Cargando..."
					selectDestino.length=0;
					var nuevaOpcion=document.createElement("option"); nuevaOpcion.value=0; nuevaOpcion.innerHTML="Cargando Modelos...";
					selectDestino.appendChild(nuevaOpcion); selectDestino.disabled=true;	
				}
				if (ajax.readyState==4)
				{
					//alert(ajax.responseText);
					selectDestino.parentNode.innerHTML=ajax.responseText;				
				} 
			}
			ajax.send(null);
		}//else
	}	
}
function VerificarModelo()
{
	var selectM=document.getElementById("cmbmodelo");
	var opcion=selectM.options[selectM.selectedIndex].value;
	//alert(opcion);
	if(opcion==1)
	{
		document.getElementById("otroModelo").style.display='block';
		document.getElementById("otroModelo").value="";
	}
	else
	{
		document.getElementById("otroModelo").style.display='none';
	}
}
/*
//ocultar controles por ID
function MostrarOcultarID(objetoVisualizar) 
{
	//document.all[objetoVisualizar] ==> solo funciona en opera y IE6 no en mozilla
	if(document.getElementById("modelo").style.display=='none')
	{
		document.getElementById("modelo").style.display='block';
	} 
	else 
	{
		document.getElementById("modelo").style.display='none';
	}
}
ejemplos
function MostrarConsultaGET(){
	divResultado = document.getElementById('resultado');
	t1 = document.getElementById('texto1').value;
	t2 = document.getElementById('texto2').value;
	alert("aun no se envio");
	//alert(t2);	
	ajax=NuevoAjax();
	ajax.open("GET", "procesa.php?t1="+t1+"&t2="+t2,true);
	alert("ya se envio e l contenido");
	ajax.onreadystatechange=function() {
		if (ajax.readyState==4) {
			divResultado.innerHTML = ajax.responseText
		}
	}
	ajax.send(null)
}
function MostrarConsultaPOST(){
	divResultado = document.getElementById('resultado');
	t1 = document.getElementById('texto1').value;
	t2 = document.getElementById('texto2').value;
	//alert(t2);	
	ajax=NuevoAjax();
	ajax.open("POST", "procesa.php",true);
	//alert("ya se envio e l contenido");
	ajax.onreadystatechange=function() {
		if (ajax.readyState==4) {
			divResultado.innerHTML = ajax.responseText
		}
	}
	ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	ajax.send("t1="+t1+"&t2="+t2);	
}
*/
