function select_innerHTML(objeto,innerHTML){
/******
* select_innerHTML - corrige o bug do InnerHTML em selects no IE
* Veja o problema em: http://support.microsoft.com/default.aspx?scid=kb;en-us;276228
* Versão: 2.1 - 04/09/2007
* Autor: Micox - Náiron José C. Guimarães - micoxjcg@yahoo.com.br
* @objeto(tipo HTMLobject): o select a ser alterado
* @innerHTML(tipo string): o novo valor do innerHTML
*******/
    objeto.innerHTML = ""
    var selTemp = document.createElement("micoxselect")
    var opt;
    selTemp.id="micoxselect1"
    document.body.appendChild(selTemp)
    selTemp = document.getElementById("micoxselect1")
    selTemp.style.display="none"
    if(innerHTML.toLowerCase().indexOf("<option")<0){//se não é option eu converto
        innerHTML = "<option>" + innerHTML + "</option>"
    }
    innerHTML = innerHTML.toLowerCase().replace(/<option/g,"<span").replace(/<\/option/g,"</span")
    selTemp.innerHTML = innerHTML
      
    
    for(var i=0;i<selTemp.childNodes.length;i++){
  var spantemp = selTemp.childNodes[i];
  
        if(spantemp.tagName){     
            opt = document.createElement("OPTION")
    
   if(document.all){ //IE
    objeto.add(opt)
   }else{
    objeto.appendChild(opt)
   }       
    
   //getting attributes
   for(var j=0; j<spantemp.attributes.length ; j++){
    var attrName = spantemp.attributes[j].nodeName;
    var attrVal = spantemp.attributes[j].nodeValue;
    if(attrVal){
     try{
      opt.setAttribute(attrName,attrVal);
      opt.setAttributeNode(spantemp.attributes[j].cloneNode(true));
     }catch(e){}
    }
   }
   //getting styles
   if(spantemp.style){
    for(var y in spantemp.style){
     try{opt.style[y] = spantemp.style[y];}catch(e){}
    }
   }
   //value and text
   opt.value = spantemp.getAttribute("value")
   opt.text = spantemp.innerHTML
   //IE
   opt.selected = spantemp.getAttribute('selected');
   opt.className = spantemp.className;
  } 
 }    
 document.body.removeChild(selTemp)
 selTemp = null
}



// Declaro los selects que componen el documento HTML. Su atributo ID debe figurar aqui.
var listadoSelects=new Array();
	listadoSelects[0]="clasificacion";
	listadoSelects[1]="subclasificacion";
	
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; 
}



function buscarEnArray(array, dato)
{
	// Retorna el indice de la posicion donde se encuentra el elemento en el array o null si no se encuentra
	var x=0;
	while(array[x])
	{
		if(array[x]==dato) return x;
		x++;
	}
	return null;
}

function cargaContenido(idSelectOrigen)
{
	// Obtengo la posicion que ocupa el select que debe ser cargado en el array declarado mas arriba
	var posicionSelectDestino=buscarEnArray(listadoSelects, idSelectOrigen)+1;
	// Obtengo el select que el usuario modifico
	var selectOrigen=document.getElementById(idSelectOrigen);
	// Obtengo la opcion que el usuario selecciono
	//var selIndex = document.getElementById(idSelectOrigen).selectedIndex;
	//var selIndex=$("#"+idSelectOrigen).val();
	var opcionSeleccionada=$("#"+idSelectOrigen).val();
	//var opcionSeleccionada=selectOrigen.options[selIndex].value;

	//var opcionSeleccionada=document.getElementById(idSelectOrigen).options[document.getElementById(idSelectOrigen).selectedIndex].value;
	// Si el usuario eligio la opcion "Elige", no voy al servidor y pongo los selects siguientes en estado "Selecciona opcion..."
	if(opcionSeleccionada==0)
	{
		var x=posicionSelectDestino, selectActual=null;
		// Busco todos los selects siguientes al que inicio el evento onChange y les cambio el estado y deshabilito
		while(listadoSelects[x])
		{
			selectActual=document.getElementById(listadoSelects[x]);
			selectActual.length=0;
			
			var nuevaOpcion=document.createElement("option"); 
			nuevaOpcion.value=0; 
			nuevaOpcion.innerHTML="Selecciona Opci&oacute;n...";
			selectActual.appendChild(nuevaOpcion);
			selectActual.disabled=true;
			x++;
		}
	}
	// Compruebo que el select modificado no sea el ultimo de la cadena
	else 
	if(idSelectOrigen!=listadoSelects[listadoSelects.length-1])
	{
		// Obtengo el elemento del select que debo cargar
		var idSelectDestino=listadoSelects[posicionSelectDestino];
		var selectDestino=document.getElementById(idSelectDestino);		
		// 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();
		ajax.open("GET", "/lib/ajax/ajax_biblioteca.php?select="+idSelectDestino+"&opcion="+opcionSeleccionada, true);
		ajax.onreadystatechange=function() 
		{ 
				//alert(ajax.readyState);
			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...";
				selectDestino.appendChild(nuevaOpcion); 
				selectDestino.disabled=true;	
			}
			if (ajax.readyState==4)
			{
				selectDestino.parentNode.innerHTML=ajax.responseText;
			} 
		}
		ajax.send(null);
		
		if (idSelectOrigen = 'clasificacion' && (opcionSeleccionada==1 || opcionSeleccionada==2))
			{
		var ajax2=nuevoAjax();
		ajax2.open("GET", "/lib/ajax/ajax_biblioteca2.php?select=evento&opcion="+opcionSeleccionada, true);
		ajax2.onreadystatechange=function() 
		{ 
			selectDestino2=document.getElementById('evento');	
				//alert(ajax.readyState);
			if (ajax2.readyState==1)
			{
				// Mientras carga elimino la opcion "Selecciona Opcion..." y pongo una que dice "Cargando..."
				selectDestino2.length=0;
				var nuevaOpcion=document.createElement("option"); nuevaOpcion.value=0; nuevaOpcion.innerHTML="Cargando...";
				selectDestino2.appendChild(nuevaOpcion); selectDestino2.disabled=true;	
			}
			if (ajax2.readyState==4)
			{
				selectDestino2.parentNode.innerHTML=ajax2.responseText;
			} 
		}
		ajax2.send(null);				
			}
		if (idSelectOrigen = 'clasificacion' && (opcionSeleccionada==3 || opcionSeleccionada==4))
			{
			selectDestino2=document.getElementById('evento');	
			selectDestino2.length=0;
			var nuevaOpcion=document.createElement("option"); nuevaOpcion.value=0; nuevaOpcion.innerHTML="Elige...";
			selectDestino2.appendChild(nuevaOpcion); selectDestino2.disabled=true;
			}
	}
}

function existeUsuario(usuario) {
	//alert("selMedID="+selMedID+"\nselUbicID="+selUbicID+"\ntipoPrecio="+tipoPrecio);
	_objetus  = nuevoAjax();
	_var_send = "usuario="+usuario;
	//alert(_var_send);
	_URL_     = "/lib/ajax/existe_usuario.php";
	_objetus.open("POST",_URL_,true);
	_objetus.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	_objetus.send('&'+_var_send); //No se envian variables
	_objetus.onreadystatechange=function() {
		if (_objetus.readyState == 4) {
			if (_objetus.status == 200) {
				if(_objetus.responseText == 1){
					return true;
				}else{
					alert("El usuario Ingresado no Existe");
					document.olvido.usuario.value = "";
					document.olvido.usuario.focus();
					return false;
				}
			}
			else if(_objetus.status==404){
				alert("Ajax Error: La página "+_URL_+" no existe");
				return false;
			}
		}
	}
}


function validaContacto(){
    var f = document.contacto;
	var error = "";
	
	if(f.nombre.value==""){
	    error = error + "\n" + "- Debe Ingresar su Nombre";
	}
	if(f.apellido.value==""){
	    error = error + "\n" + "- Debe Ingresar su Apellido";
	}
	if(f.email.value==""){
	    error = error + "\n" + "- Debe Ingresar su Correo Electrónico";
	}
	if(f.procedencia.value==""){
	    error = error + "\n" + "- Debe Ingresar su País o Lugar de Procedencia";
	}
	if(f.texto.value==""){
	    error = error + "\n" + "- Debe Ingresar un texto descriptivo acerca del aspecto que desea comentar.";
	}
    if(error !=""){
	     alert (error);
		 return false;
	}else{
	     alert ("Gracias por contactarnos, acogeremos su solicitud a la brevedad.");
		 return true;
	}
}

function validaOlvido(){
    var f = document.olvido;
	var error = "";
	if(f.usuario.value==""){
	    error = error + "\n" + "- Debe Ingresar su Nombre de Usuario";
	}
	if(f.contacto.value==""){
	    error = error + "\n" + "- Debe Ingresar una Persona de Contacto";
	}
	if(f.procedencia.value=="0"){
	    error = error + "\n" + "- Debe Seleccionar su País de Procedencia";
	}
    if(error !=""){
	     alert (error);
		 return false;
	}else{
	     alert ("Gracias por contactarnos, manténgase atento. Atenderemos su solicitud a la brevedad.");
		 return true;
	}
}

