var msj_estandar="complete los campos obligatorios";

/* esto lo deberia implementar en casa archivo php que use formularios */
//para que este metodo generico funcione, cada objeto html tiene que tener definido como class=obligatorio
function validar_entrada()
{
	var formu=document.formu;	
	for (var i=0; i < formu.elements.length; i++)
	{
		//bugfix: no se porque mierda en IE el atributo class lo llaman className, en FF anda con cualquiera
		if (formu.elements[i].className=="obligatorio")
		{				
			switch (formu.elements[i].type)
			{
				case "text":
				case "textarea":
					if (formu.elements[i].value=="")
					{
						alert (msj_estandar);	
						formu.elements[i].focus();
						return false;
					}
					break;
					
				case "select-one":
					if (formu.elements[i].selectedIndex <= 0)
					{
						alert (msj_estandar);	
						formu.elements[i].focus();
						return false;
					}
					break;
				
				case "select-multiple":
					/*
					var opciones=formu.elements[i].options;
					var ok=false;				
					for (var i=0; i < opciones.length; i++)
					{
						ok=ok||opciones[i].selected;					
					}

					if (!ok);
					{
						alert (msj_estandar);	
						formu.elements[i].focus();
						return false;
					}
					*/
					break;
			}
		}	
	}
	return true;	
}

function cambiar_bandera(id)
{
	var formu=document.formu;	
	if (id)
	{		
		var id_pais=document.getElementById(id);
		var bandera=document.getElementById("bandera_"+id)
	} else {
		var id_pais=formu.id_pais;
		var bandera=document.getElementById("bandera");
	}

	if (id_pais.selectedIndex>0)
	{
		if (id_pais.options[id_pais.selectedIndex].value=="fk")
		{
			bandera.src="img/flags/ar.gif";
			bandera.title="Islas Malvinas Argentinas";
		} else {
			bandera.src="img/flags/"+id_pais.options[id_pais.selectedIndex].value+".gif";
			bandera.title=id_pais.options[id_pais.selectedIndex].text;
		}
	}
}


//oculta o muestra un objeto
function ocultar(id,tipo)
{
	var obj=document.getElementById(id);
	if (obj)
	{	
		if (tipo=="display")
		{
			if (obj.style.display=="none")
				obj.style.display="block";
			else
				obj.style.display="none";
		} else {
			if (obj.style.visibility=="visible")
				obj.style.visibility="hidden";
			else
				obj.style.visibility="visible";
		}
	}	
	
	//para evitar el pantallazo
	if (id=="contenedor")
		obj.innerHTML="cargando...";
}


function randomnumber(num1, num2)
{
	num1 = parseInt(num1);
	num2 = parseInt(num2);
	if(num1 >= num2)
	{
		alert("Number 2 should be greater than Number 1");
	}
	else
	{
		var generator = Math.random()*(num2-num1);
		generator = Math.round(num1+generator);
		return generator;
	}
}

function ajax_load(url,pars,id_contenedor)
{
	if (pars != "")
		pars+="&";
	pars+="hash=" + randomnumber(0,999999);
	
	var myAjax = new Ajax.Request(
		url,
		{
			method: 'get',
			parameters: pars,
			onComplete: new Function("originalRequest","{$('" + id_contenedor + "').innerHTML=originalRequest.responseText;}")
		});
}

//dado un id_formulario, un id_target (objeto donde posicionar el resultado) y una url, toma todos los parametros del formulario y llama a ajax_load
function ajax_load_handler(id_form,id_target,url)
{
	var contenedor=document.getElementById("contenedor");
	var formu=document.getElementById(id_form);
	var target=document.getElementById(id_target);
	var params="";	
	
	for (var i=0; i < formu.elements.length; i++)
	{		
		if (formu.elements[i].name)
		{
			params+=formu.elements[i].name+"=";
			switch (formu.elements[i].type)
			{
				case "hidden":
				case "text":
				case "textarea":
					params+=formu.elements[i].value;
					break;
					
				case "select-one":
					params+=formu.elements[i].options[formu.elements[i].selectedIndex].value;
					break;
			}
			params+="&";
		}
	}		
	ajax_load(url,params,"contenedor");		
	contenedor.style.display="block";		
	var pos=getPosition(target);		
	contenedor.style.left=pos.x;
	contenedor.style.top=pos.y-5;	
}

