function validar(){

	var f = document.control_edad;
	if(f.pais.value == 0){
		alert("Debe seleccionar un pa\u00EDs");
		f.pais.focus();
		return;
	}
	if(f.dia.value < 1 || f.dia.value > 31 || isNaN(f.dia.value)){
		alert("Por favor inserte un d\u00EDa v\u00E1lido");
		f.dia.focus();
		return;
	}
	if(f.mes.value < 1 || f.mes.value > 12 || isNaN(f.mes.value)){
		alert("Por favor inserte un mes v\u00E1lido");
		f.mes.focus();
		return;
	}
	if(f.anio.value < 1900 || f.anio.value > 2008 || isNaN(f.anio.value)){
		alert("Por favor inserte un a\u00F1o v\u00E1lido");
		f.anio.focus();
		return;
	}


	var permitido = f.pais.value.substring(0,1);
	if(permitido == '*'){
		alert('Lo sentimos pero conforme a la legislación vigente en tu pa\u00EDs de origen, no te est\u00E1 permitido el acceso a este sitio web');
		window.location = "http://www.google.es";
		return;
	}else{


					if(permitido >= 0 || permitido < 9){
						edad_limite = '2'+permitido;
					}else{
						if(permitido == 9){
							edad_limite = 19;
						}else{
							edad_limite = 18;
						}
					}

				if(calcular_edad(f.dia.value+"/"+f.mes.value+"/"+f.anio.value) < edad_limite){
						alert("Lo sentimos pero el acceso a este sitio web est\u00E1 reservado a mayores de edad.");
						window.location = "http://www.google.es";
						return;
				}else{
					//f.recordarDatos.value = (f.cookie.checked==true) ? 1:0;
					if(f.recordarDatos.checked==true){
						//guardaCookie();
					}
					f.submit();
				}

}
}



//calcular la edad de una persona
//recibe la fecha como un string en formato español
//devuelve un entero con la edad. Devuelve false en caso de que la fecha sea incorrecta o mayor que el dia actual
function calcular_edad(fecha){

    //calculo la fecha de hoy
	  var hoy = new Date();
    //alert(hoy)

    //calculo la fecha que recibo
    //La descompongo en un array
    var array_fecha = fecha.split("/");

    //si el array no tiene tres partes, la fecha es incorrecta
    if (array_fecha.length!=3){
       return false;
      }

    //compruebo que los ano, mes, dia son correctos
    var ano;
    ano = parseInt(array_fecha[2]);
    if (isNaN(ano)){
       return false;
      }

    var mes;
    mes = parseInt(array_fecha[1]);
    if (isNaN(mes)){
       return false;
		}
    var dia;
    dia = parseInt(array_fecha[0]);
    if (isNaN(dia)){
       return false;
      }

    //si el año de la fecha que recibo solo tiene 2 cifras hay que cambiarlo a 4
    if (ano<=99){
       ano +=1900;
      }

    //resto los años de las dos fechas
    edad=hoy.getFullYear() - ano - 1; //-1 porque no se si ha cumplido años ya este año. A capon por culpa de FF

    //si resto los meses y me da menor que 0 entonces no ha cumplido años. Si da mayor si ha cumplido
    if (hoy.getMonth() + 1 - mes < 0){ //+ 1 porque los meses empiezan en 0
       return edad;
      }
    if (hoy.getMonth() + 1 - mes > 0){
       return edad+1;
			}
    //entonces es que eran iguales. miro los dias
    //si resto los dias y me da menor que 0 entonces no ha cumplido años. Si da mayor o igual si ha cumplido
    if (hoy.getUTCDate() - dia >= 0){
       return edad + 1;
			}

    return edad;
}