function Comprobacion_Fecha()
{
var ano;
	
	if(document.frm.cmbano.value==0 || document.frm.cmbmes.value==0 || document.frm.cmbdia.value==0){
		alert('Se debe de introducir una fecha de nacimiento');
		return false;
	}
	else{
		ano=document.frm.cmbano.value;
		if ((ano%4==0 && ano%100!=0) || ano%400==0){
			bisiesto=1;
			if(document.frm.cmbmes.value==2 && document.frm.cmbdia.value>29){
				alert('El mes de febrero en un año bisiesto sólo tiene 29 días');
				return false;
			}
			else{
				if((document.frm.cmbmes.value==4 || document.frm.cmbmes.value==6 || document.frm.cmbmes.value==9 || document.frm.cmbmes.value==11) && document.frm.cmbdia.value>30){
					alert('El mes que has seleccionado sólo tiene 30 días');
				}
				else{
					return true;
				}
			}
		}
		else{
			if(document.frm.cmbmes.value==2 && document.frm.cmbdia.value>28){
				alert('El mes de febrero en un año no bisiesto sólo tiene 28 días')
				return false;
			}
			else{
				if((document.frm.cmbmes.value==4 || document.frm.cmbmes.value==6 || document.frm.cmbmes.value==9 || document.frm.cmbmes.value==11) && document.frm.cmbdia.value>30){
					alert('El mes que has seleccionado sólo tiene 30 días');
					return false;
				}
				else{
					return true;
				}
			}
		}
	}
	


}


function Codogigo_Postal()
{
var cp;
	
	if (document.frm.cmbciudad.value!='' && document.frm.txtcp.value!=''){
		if(Numero (document.frm.txtcp.value,'el codigo postal')){
		cp=document.frm.txtcp.value.charAt(0)+document.frm.txtcp.value.charAt(1)
		//alert(document.frm.cmbciudad.value);
		//alert(cp);
		if(document.frm.cmbciudad.value!=cp){
			alert('El código postal introducido no coincide con la ciudad seleccionada.');
			return false;
		}
		else{
			return true;
		}
		}
		else{
			alert('Debes de introducir correctamente el código postal');
			return false;
		}
	}
	else{
		if (document.frm.cmbciudad.value==''){
			alert('Se debe de seleccionar una ciudad');
		}
		else{
			alert('Se debe de introducir un código postal.');
		}
	}
	
}

function Numero (num,origen)
{
	booleano=0
	
	n=num.length;
	//alert(n);
if (n==5)
{
	for(i=0;i<n;i++)
	{
		c=num.charCodeAt(i);
		//alert(c)
		if(c>=48 && c<=57)
		{
		}
		else
		{
			if (c!=32){
				booleano=1;
			}
		}
	}
}
else{
	booleano=1;
}
	if (booleano!=0)
	{
		alert('Se debe de especificar correctamente el  '+origen+'.')
		return false;
	}
	else
	{
		return true;
	}
}

function Texto (cadena,origen){
	//alert(origen);
	//alert(cadena);
	booleano=0
	if (cadena!=''){
		n=cadena.length
		for(i=0;i<n;i++){
			cad=cadena.charCodeAt(i);
			//alert(cad)
			if((cad>=65 && cad<=90) || (cad>=48 && cad<=57) || (cad>=97 && cad<=122) || cad==193 ||  cad==176 || cad==32 ||cad==47 || cad==92  || cad==46 ||cad==201 || cad==205 || cad==211 || cad==218 || cad==225 || cad==233 || cad==193 || cad==237 || cad==243 || cad==250 || cad==170 || cad==186 || cad==44 || cad==192 || cad==200 || cad==204 || cad==210 || cad==217 || cad==224 || cad==232 || cad==236 || cad==242 || cad==249 || cad==45 || cad==95 || cad==34 || cad==209 || cad==241){
				//alert(cad)	
			}
			else{
				alert('Se debe de especificar correctamente '+origen+'. '+cadena.charAt(i)+' No válido.')
				booleano=1;
			}
		}
		
		if (booleano==0){
			return true;
		}
		else{
			//alert('Se debe de especificar correctamente '+origen+'.')
			return false;
		}
		
	}
	else{
		alert('Se debe de especificar correctamente '+origen+'.')
		return false;
	}
}


function email(cadena)
{
	//alert(cadena);
		n=cadena.lastIndexOf('@')
		n1=cadena.lastIndexOf('.')
		
		if(n!=-1 && n1!=-1 && n<n1)
		{	
				lg=cadena.length;
				ext=cadena.substring(n1+1,lg);
				//alert(ext);
				if (ext=='es' || ext=='com' || ext=='net' || ext=='tv'){
					return true;
				}
			   else{
				alert('Se debe de especificar una dirección email correcta.')
				return false;
				}
				
		}
		
		else
		{
			alert('Se debe de especificar una dirección email correcta.')
			return false;
		}

}

function Direccion (cadena){
	//alert(cadena);
	booleano=0
	if (cadena!=''){
		n=cadena.length
		for(i=0;i<n;i++){
			cad=cadena.charCodeAt(i);
			//alert(cad)
			if((cad>=65 && cad<=90) || (cad>=48 && cad<=57) || (cad>=97 && cad<=122) || cad==193 ||  cad==176 || cad==32 ||cad==47 || cad==92  || cad==46 ||cad==201 || cad==205 || cad==211 || cad==218 || cad==225 || cad==233 || cad==193 || cad==237 || cad==243 || cad==250 || cad==170 || cad==186 || cad==44 || cad==192 || cad==200 || cad==204 || cad==210 || cad==217 || cad==224 || cad==232 || cad==236 || cad==242 || cad==249 || cad==45 || cad==95 || cad==34){
				//alert(cad)	
			}
			else{
				//alert(cad)
				alert('Se debe de especificar la Dirección correctamente. '+cadena.charAt(i)+' No válido.')
				booleano=1;
			}
		}
		
		if (booleano==0){
			return true;
		}
		else{
			
			return false;
		}
		
	}
	else{
		alert('Se debe de especificar una Dirección')
		return false;
	}
}

function Contrasena (cadena){
	//alert(origen);
	//alert(cadena);
	booleano=0
	if (cadena!=''){
		n=cadena.length
		for(i=0;i<n;i++){
			cad=cadena.charCodeAt(i);
			//alert(cad)
			if((cad>=65 && cad<=90) || (cad>=48 && cad<=57) || (cad>=97 && cad<=122) || cad==193 ||  cad==176 || cad==64 ||cad==47 || cad==92  || cad==46 ||cad==201 || cad==205 || cad==211 || cad==218 || cad==225 || cad==233 || cad==193 || cad==237 || cad==243 || cad==250 || cad==170 || cad==186 || cad==44 || cad==192 || cad==200 || cad==204 || cad==210 || cad==217 || cad==224 || cad==232 || cad==236 || cad==242 || cad==249 || cad==45 || cad==95 || cad==34 || cad==209 || cad==241){
				//alert(cad)	
			}
			else{
				alert('Se debe de especificar correctamente la contraseña. '+cadena.charAt(i)+' No válido.')
				booleano=1;
			}
		}
		
		if (booleano==0){
			return true;
		}
		else{
			//alert('Se debe de especificar correctamente '+origen+'.')
			return false;
		}
		
	}
	else{
		alert('Se debe de especificar correctamente la contraseña.')
		return false;
	}
}

function Texto_Textarea(cadena,origen){
	ko=0
	if (Ver_Blancos(cadena,origen)){
		carct_valido='';
		carct_valido = 'ABCDEFGHIJKLMNOPQRSTUVWYXZ1234567890@_.-ªº!|#$%&/()=?¿^*¨{} Ç,;.:ÁÉÍÓÚÀÈÌÒÙÂÊÎÔÛÄËÏÖÜSÇÃEIILNRSUUØ£²³G®©¶><µ§EGHGYÑ-/+"¨~][|¢¦';
		//carct_valido="abcdefghijklmñnopqrstuvwxyz01234567890áéíóúàèìòù ªº()-";
		cadenalower=cadena.toLowerCase();
		for (i=0 ; i<=cadena.length-1; i++){
			//alert(cadena.substring(i,i+1));
			if (carct_valido.indexOf(cadenalower.substring(i,i+1),0)==-1 && cadenalower.charCodeAt(i) ==39 && cadenalower.charCodeAt(i) ==13){
				ko=1
				//cadena_ko=cadena_ko+" "+cadena.substring(i,i+1)
				alert('Debes especificar correctamente '+origen.toUpperCase()+'. '+cadena.substring(i,i+1)+' No válido.')
				return false;
			}
		}
	}
	else{
		alert('Debes especificar '+origen.toUpperCase()+'.')
		return false;
	}
	if (ko==0){
		return true;
	}
}
function Ver_Blancos(cadena,origen){
	blancos=0
	if (cadena.lenght==0){
		return false;
	}
	else{
		//alert(cadena.length);
		for (i=0; i<=cadena.length; i++){
			
			if (cadena.charCodeAt(i)==32){
				//alert('estoy aqui dentro')
				blancos=blancos+1
			}
		}
		//alert(blancos);
		if(blancos==cadena.length){
			return false;
		}
		else{
			return true;
		}
		
	}
}
