function validar_email(email){
	var respuesta=false;

	if(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/.test(email)) respuesta=true;
	else alert("La dirección de email es incorrecta.");

	return respuesta;
}

function letra_dni(dni){
	//devuelve la letra correspondiente a un número DNI
	var lockup='TRWAGMYFPDXBNJZSQVHLCKE';
	return lockup.charAt(dni % 23);
}

function validar_dni(dni){
	var respuesta=false;
	if(dni.length>0){
		if(dni.length<9) alert("El DNI debe tener los 8 números y la letra sin espacios ni puntos, y el NIE debe tener una letra, 7 números y otra letra sin espacios ni puntos.");
		else{
			var dninum=dni.substring(0,8);
			var dniletra=dni.substring(0,1).toUpperCase();

			if(dniletra=="X") dninum="0"+dni.substring(1,8);//Es un NIE
			dniletra=dni.substring(8).toUpperCase();

			if(letra_dni(dninum)==dniletra) respuesta=true;
			else alert("La letra del DNI/NIE no corresponde con su número. Comprueba que has escrito el DNI/NIE correctamente.");
		}
	}else respuesta=true;
	return respuesta;
}

// La función recibe el CIF completo: A58818501
//COMPROBAR ANTES DE USAR: http://www.aulambra.com/ver2.asp?id=139&tipo=
function validar_cif(cif){
	var respuesta=false;
	
	var temp=cif.value.toUpperCase();
	if(!/^[A-Za-z0-9]{9}$/.test(temp)) alert("Longitud incorrecta, un CIF consta de 9 dígitos");//Son 9 dígitos?
	else if(!/^[ABCDEFGHKLMNPQS]/.test(temp)) alert("El primer dígito es incorrecto, debe ser una letra de las siguientes: A,B,C,D,E,F,G,H,K,L,M,N,P,Q,S");//Es una letra de las admitidas ?
	else{
		var v1=new Array(0,2,4,6,8,1,3,5,7,9);
		var num_temp=0;
		for(i=2; i<=6; i+=2){
			num_temp=num_temp+v1[parseInt(cif.substr(i-1,1))];
			num_temp=num_temp+parseInt(cif.substr(i,1));
		};
		num_temp=num_temp+v1[parseInt(cif.substr(7,1))];
		num_temp=(10 - (num_temp%10));

		var digito_control=cif.substr(8,1);

		if(num_temp==10){
			if((digito_control!='J')||(digito_control!='O')) alert( "El dígito de control del CIF es incorrecto." );//alert( "El dígito de control es: J ó 0" );
			else respuesta=true;
		}else if(digito_control!=num_temp) alert( "El dígito de control del CIF es incorrecto." );//alert( "El dígito de control es: J ó 0" );
		else respuesta=true;
	}
	
	return respuesta;
}

function validar_precio(precio){
	var respuesta=false;

	if(isNaN(precio)) alert("El precio debe ser un campo numérico en euros. Se pueden introducir 2 decimales indicándolos con el punto.");
	else{
		var posicion=precio.lastIndexOf(".");
		if(posicion>=0){
			if((precio.length-(posicion+1))>2) alert("El precio puede tener únicamente 2 decimales indicados con el punto.");
			else respuesta=true;
		}else respuesta=true;
	}

	return respuesta;
}
function validar_iva(iva){
	var respuesta=false;

	if(isNaN(iva)) alert("El IVA debe ser un campo numérico en %. Se pueden introducir 2 decimales indicándolos con el punto.");
	else{
		var posicion=iva.lastIndexOf(".");
		if(posicion>=0){
			if((iva.length-(posicion+1))>2) alert("El IVA puede tener únicamente 2 decimales indicados con el punto.");
			else respuesta=true;
		}else respuesta=true;
	}

	return respuesta;
}
function validar_superficie(metros){
	var respuesta=false;

	if(isNaN(metros)) alert("La superficie debe ser un campo numérico. Se pueden introducir 2 decimales indicándolos con el punto.");
	else{
		var posicion=metros.lastIndexOf(".");
		if(posicion!=-1){
			if((metros.length-(posicion+1))>2) alert("La superficie puede tener únicamente 2 decimales indicados con el punto.");
			else respuesta=true;
		}else respuesta=true;
	}

	return respuesta;
}
function validar_fecha(fecha){
	var respuesta=false;

	var ano=new String(fecha.substring(fecha.lastIndexOf("/")+1,fecha.length));
	var mes=new String(fecha.substring(fecha.indexOf("/")+1,fecha.lastIndexOf("/")));
	var dia=new String(fecha.substring(0,fecha.indexOf("/")));

	if((isNaN(ano))||(ano.length<4)||(parseFloat(ano)<1900)){
		alert("La fecha no parece correcta: año inválido.");
	}else if((isNaN(mes))||(parseFloat(mes)<1)||(parseFloat(mes)>12)){
		alert("La fecha no parece correcta: mes inválido.");
	}else if((isNaN(dia))||(parseInt(dia,10)<1)||(parseInt(dia,10)>31)){
		alert("La fecha no parece correcta: día inválido.");
	}else{
		if((mes==4)||(mes==6)||(mes==9)||(mes==11)||(mes==2)){
			if((mes==2)&&(dia > 28)||(dia>30)) alert("La fecha no parece correcta: día inválido.");
			else respuesta=true;
		}else respuesta=true;
	}

	return respuesta;
}


function limpiar_disclaimer(){
	if(document.getElementById("disclaimer_inf")!=null){
		var div=document.getElementById("disclaimer_inf");
		while(div.hasChildNodes()){
			div.removeChild(div.lastChild);
		}
	}
}
function quitar_disclaimer(){
	limpiar_disclaimer();

	document.getElementById("contenedor_disclaimer").style.display="none";
	document.getElementById("fondo_disclaimer").style.display="none";
}
function cargar_disclaimer(){
	if(document.getElementById("fondo_disclaimer")==null){
		//Creamos el fondo del disclaimer
		var enlace=document.createElement("a");
		enlace.setAttribute("href","javascript:quitar_disclaimer();");
		enlace.setAttribute("onclick","quitar_disclaimer();return fale;");

		var div=document.createElement('div');
		div.setAttribute("id","fondo_disclaimer");
		enlace.appendChild(div);
		document.body.appendChild(enlace);
	}
	if(document.getElementById("contenedor_disclaimer")==null){
		//Creamos el contenedor del disclaimer
		var div=document.createElement("div");
		div.setAttribute("id","contenedor_disclaimer");
		document.body.appendChild(div);

		//Metemos la parte de cerrar
		div=document.createElement("div");
		div.setAttribute("id","disclaimer_cerrar");
		var enlace=document.createElement("a");
		enlace.setAttribute("href","javascript:quitar_disclaimer();");
		enlace.setAttribute("onclick","quitar_disclaimer();return false;");
		var imagen=document.createElement("img");
		imagen.setAttribute("src","/images/closelabel.gif");
		imagen.setAttribute("alt","Cerrar");
		enlace.appendChild(imagen);
		div.appendChild(enlace);
		document.getElementById('contenedor_disclaimer').appendChild(div);

		//Metemos la parte de informacion
		div=document.createElement("div");
		div.setAttribute("id","disclaimer_inf");
		document.getElementById('contenedor_disclaimer').appendChild(div);
	}

	limpiar_disclaimer();
	window.scrollTo(0,0);
	document.getElementById("contenedor_disclaimer").style.display="block";
	document.getElementById("fondo_disclaimer").style.display="block";
}
