	function validar(){
		fr = document.consulta;
				
		
		
		if (!fr['data[consulta][aviso]'].checked){
			alert("Debes aceptar el aviso legal");
			return false;
		}
		
		if (!fr['data[consulta][nombre]'].value){
			alert("Introduce un nombre");
			fr['data[consulta][nombre]'].focus();
			return false;
		}
		if (!fr['data[consulta][apellido]'].value){
			alert("Introduce el primer apellido");
			fr['data[consulta][apellido]'].focus();
			return false;
		}
		if (!fr['data[consulta][apellido2]'].value){
			alert("Introduce el segundo apellido");
			fr['data[consulta][apellido2]'].focus();
			return false;
		}
		
		if (fr['data[consulta][dia]'].value==0){
			alert("Introduce un dia de nacimiento");
			return false;
		}
		if (fr['data[consulta][mes]'].value==0){
			alert("Introduce un mes de nacimiento");
			return false;
		}
		
		if (fr['data[consulta][anyo]'].value!="Año"){
			if (isNaN(fr['data[consulta][anyo]'].value)){
				alert("El valor del año debe ser numérico");
				fr['data[consulta][anyo]'].focus();
				return false;
			} else {
				if ((eval(fr['data[consulta][anyo]'].value) < 1900)||(eval(fr['data[consulta][anyo]'].value) > 2020)){
					alert("Introduce un año correcto");
					fr['data[consulta][anyo]'].focus();
					return false;
				}
			}
		} else {
			alert("Introduce un año de nacimiento");
			fr['data[consulta][anyo]'].focus();
			return false;
		}
		
		if (!fr['data[consulta][calle]'].value){
			alert("Introduce la dirección");
			fr.calle.focus();
			return false;
		}
		if (!fr['data[consulta][zip]'].value){
			alert("Introduce el código postal");
			fr['data[consulta][zip]'].focus();
			return false;
		} else {
			if (isNaN(fr['data[consulta][zip]'].value)){
				alert("El valor del código postal debe ser numérico");
				fr['data[consulta][zip]'].focus();
				return false;
			}
		}
		
		if (!fr['data[consulta][poblacion]'].value){
			alert("Introduce la población");
			fr['data[consulta][poblacion]'].focus();
			return false;
		}
		if (!fr['data[consulta][telf]'].value){
			alert("Introduce un número de teléfono");
			fr['data[consulta][telf]'].focus();
			return false;
		} else {
			if (isNaN(fr['data[consulta][telf]'].value)){
				alert("El teléfono debe ser un número");
				fr['data[consulta][telf]'].focus();
				return false;
			}
		}
		
		if (fr['data[consulta][telfm]'].value){
			if (isNaN(fr['data[consulta][telfm]'].value)){
				alert("El teléfono móvil debe ser un número");
				fr['data[consulta][telfm]'].focus();
				return false;
			}
		}
		
		if (!fr['data[consulta][email]'].value){
			alert("Introduce una dirección de correo electrónico");
			fr['data[consulta][email]'].focus();
			return false;
		} else {
			if (!validarMail(fr['data[consulta][email]'])){
				fr['data[consulta][email]'].focus();
				return false;
			}
		}
		
		if (fr['data[consulta][area]'].value==0){
			alert("Debes elegir el área de la consulta");
			return false;
		}
		
		if (!fr['data[consulta][respuesta]'].value){
			alert("Introduce la pregunta o buena idea");
			fr['data[consulta][respuesta]'].focus();
			return false;
		}
						
		fr['data[consulta][nombre]'].value = ConvertString(fr['data[consulta][nombre]'].value);
		fr['data[consulta][apellido]'].value = ConvertString(fr['data[consulta][apellido]'].value);
		fr['data[consulta][apellido2]'].value = ConvertString(fr['data[consulta][apellido2]'].value);
		fr['data[consulta][calle]'].value = ConvertString(fr['data[consulta][calle]'].value);
		fr['data[consulta][numero]'].value = ConvertString(fr['data[consulta][numero]'].value);
		fr['data[consulta][escalera]'].value = ConvertString(fr['data[consulta][escalera]'].value);
		fr['data[consulta][piso]'].value = ConvertString(fr['data[consulta][piso]'].value);
		fr['data[consulta][puerta]'].value = ConvertString(fr['data[consulta][puerta]'].value);
		fr['data[consulta][resto]'].value = ConvertString(fr['data[consulta][resto]'].value);
		fr['data[consulta][poblacion]'].value = ConvertString(fr['data[consulta][poblacion]'].value);
		fr['data[consulta][respuesta]'].value = ConvertString(fr['data[consulta][respuesta]'].value);

		return true;
	}
	
	function validarMail(input){
		   var supported = 0;
		  if (window.RegExp) {
		    var tempStr = "a";
		    var tempReg = new RegExp(tempStr);
		    if (tempReg.test(tempStr)) supported = 1;
		  }
		  if (!supported)
		    return (input.value.indexOf(".") > 2) && (input.value.indexOf("@") > 0);
		  var r1 = new RegExp("(@.*@)|(\\.\\.)|(@\\.)|(^\\.)");
		  var r2 = new RegExp("^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$");
		  if ((!r1.test(input.value) && r2.test(input.value))){
			return true;
		  }else{
		  	alert("El mail debe tener el formato correcto");
		  	return false;
		  }
	}
	function ConvertString(input) {
		var output = "";
		var si = 0;
		for (var i = 0; i < input.length; i++) {
			//alert(input.charCodeAt(i));
			si = 0;
			if ((input.charCodeAt(i) == 13) && (input.charCodeAt(i + 1) == 10)) {
				si = 1;
				i++;
				output += "<BR>";
			}
			if (input.charCodeAt(i) == 32){
				si = 1;
				output += "%20";
			}
			if ((input.charCodeAt(i)== 225)||(input.charCodeAt(i)== 224)){
				si = 1;
				output += "a";
			}
			if ((input.charCodeAt(i)== 233)||(input.charCodeAt(i)== 232)){
				si = 1;
				output += "e";
			}
			if ((input.charCodeAt(i)== 237)||(input.charCodeAt(i)== 236)){
				si = 1;
				output += "i";
			}
			if ((input.charCodeAt(i)== 243)||(input.charCodeAt(i)== 242)){
				si = 1;
				output += "o";
			}
			if ((input.charCodeAt(i)== 250)||(input.charCodeAt(i)== 249)){
				si = 1;
				output += "u";
			}
			if (input.charCodeAt(i)== 39){
				si = 1;
				output += "%20";
			}
			if (input.charCodeAt(i)== 38){
				si = 1;
				output += "%20";
			}
			
			if (si == 0){
				output += input.charAt(i);
			}								   	
		}
		return output;
	}
	function scrollPage()
	{
		scrTime += scrInt;
		if (scrTime < scrDur) {
			window.scrollTo( 0, easeInOut(scrTime,scrSt,scrDist,scrDur) );
		}else{
			window.scrollTo( 0, scrSt+scrDist );
			clearInterval(scrollInt);
		}
	}
	
	function scrollToAnchor(aname)
	{
		var anchors, i, ele;
	
		if (!document.getElementById)
			return;
		
		// get anchor
		anchors = document.getElementsByTagName("a");
		for (i=0;i<anchors.length;i++) {
			if (anchors[i].name == aname) {
				ele = anchors[i];
				i = anchors.length;
			}
		}
		
		// set scroll target
		if (window.scrollY)
			scrSt = window.scrollY;
		else if (document.documentElement.scrollTop)
			scrSt = document.documentElement.scrollTop;
		else
			scrSt = document.body.scrollTop;

		
		
		scrDist = ele.offsetTop - scrSt;
		scrDur = 500;
		scrTime = 0;
		scrInt = 10;
		
		// set interval
		//clearInterval(scrollInt);
		scrollInt = setInterval( scrollPage, scrInt );
	}
	
	
	
	
	/*
	EASING FUNCTIONS
	*/
	
	function easeInOut(t,b,c,d)
	{
		return c/2 * (1 - Math.cos(Math.PI*t/d)) + b;
	}
	
	function verRespuesta(){
		Effect.Appear('update', { duration: 3.0 });
		document.getElementById('send').style.cursor='pointer';
		document.getElementById('send').disabled =false;
		document.getElementById('sending').style.display='none';
	}