function validarfecha(fecha)
{
     var x=fecha.split("-");
     var b=0;
     dia=x[2];     mes=x[1];     anio=x[0];
    if(isNaN(dia) || isNaN(mes)  || isNaN(anio) )
	{
	alert("Invalid date format");
	b++;
	}
    else
	{
	  	if(anyoBisiesto(anio))
	  	      {    febrero=29;}
		 else
 	 	       {    febrero=28;}
		if ((mes<1) || (mes>12))
		       {
		           alert("The introduced month is invalid.  Please, it introduces a correct month");
				   //El mes introducido no es valido. Por favor, introduzca un mes correcto
 	                          b++;
		        }
		if ((mes==2) && ((dia<1) || (dia>febrero)))
		       {
		           alert("The introduced day is invalid.  Please, it introduces a correct day");
				   //El dia introducido no es valido. Por favor, introduzca un dia correcto
		           b++;
		       }
		 if (((mes==1) || (mes==3) || (mes==5) || (mes==7) || (mes==8) || (mes==10) || (mes==12)) && ((dia<1) || (dia>31)))
		      {
		          alert("The introduced day is invalid.  Please, it introduces a correct day");
				  	//El dia introducido no es valido. Por favor, introduzca un dia correcto
		           b++;
		      }
		 if (((mes==4) || (mes==6) || (mes==9) || (mes==11)) && ((dia<1) || (dia>30)))
		      {
		          alert("The introduced day is invalid.  Please, it introduces a correct day");
					 //El dia introducido no es valido. Por favor, introduzca un dia correcto
		           b++;
		      }
		if ((anio<1900) || (anio>2900))
		      {
		          alert("The introduced year is invalid.  Please, it introduces a year between 1900 and 2900");
				  //El año introducido no es valido. Por favor, introduzca un año entre 1900 y 2900
		         b++;
		     }
	}
	 if(b==0)
	     { return true;}
	 else
	    { return false;  }
}
 function anyoBisiesto(anyo)

    {

        /**

        * si el año introducido es de dos cifras lo pasamos al periodo de 1900. Ejemplo: 25 > 1925

        */
        if (anyo < 100)
            var fin = anyo + 1900;
       else
           var fin = anyo ;
        /***************/

        if (fin % 4 != 0)
            return false;
        else
        {
           if (fin % 100 == 0)
            {
               if (fin % 400 == 0)
                               return true;
                else
                              return false;
             }
            else
            {
                return true;
            }
        }
    }
function validarcorreo(correo)
{
	idx=correo.indexOf("@");
	if(idx!=-1)
	{
		idx2=correo.indexOf(".",idx+1);
		if(idx2!=-1)
		{return true;}
		else
		{alert("E Mail Invalid!");return false;}
	}
	else
	{alert("E Mail Invalid!");return false;}
}

function IsMail(YourMail)
{
	var Template = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/; //Formato de direccion de correo electronico
	
	if(YourMail.value!="") 
	{
		if (Template.test(YourMail.value)) 
		{							}
		else
		{   alert("Por favor, ingrese el email correcto");
			YourMail.focus();
			YourMail.select();
		}		
	}
	return false;
}

function IsPhone(YourPhone)
{
	var Template = /^[0-9- ]+$/i //Formato de alfanumerico
	
	if(YourPhone.value!="") 
	{
		if (Template.test(YourPhone.value)) 
		{							}
		else
		{   alert("El Teléfono que ha Ingresado tiene Caracteres Inválidos");
			YourPhone.focus();
			YourPhone.select();
		}		
	}
	return false;
}

function IsTexto(texto)
{
	var Template = /^[a-zA-ZáéíóúÁÉÍÓÚÑñ, ]+$/i //Formato de alfanumerico
		if(texto.value!="") 
	{
		if (Template.test(texto.value)) 
		{							}
		else
		{   alert("Please insert only characters");
			texto.focus();
			texto.select();
		}		
	}		
	return false;
}

function IsDay(day)
{
	if(day.value!="") 
	{
	if ( (isNaN(day.value)) || (day.value<1) || (day.value >31) )
		{
			alert("Day invalid");
			day.focus();
			day.select();			
		}
	}
	
	return false;	
}

function IsMonth(month)
{
	if(month.value!="") 
	{
	if ( (isNaN(month.value)) || (month.value<1) || (month.value >12) )
		{
			alert("No es un Mes Válido");
			month.focus();
			month.select();
		}
	}	
	return false;	
}

function IsYear(year)
{
	if(year.value!="") 
	{
	if ( (isNaN(year.value)) || (year.value<1920) || (year.value >2020) )
		{
			alert("The year is not valid");
			year.focus();
			year.select();
		}		
	}	
	return false;	
}

function IsYearNac(year)
{
	if(year.value!="") 
	{
	if ( (isNaN(year.value)) || (year.value<1910) || (year.value >1990) )
		{
			alert("No es un año Válido.");
			year.focus();
			year.select();
		}		
	}	
	return false;	
}

function IsNumerico(numero)
{
	var Template = /^[0-9]+$/i //Formato de alfanumerico
	
	if(numero.value!="") 
	{
		if (Template.test(numero.value)) 
		{							}
		else
		{   alert("Ingrese solo cantidades numércias");
			numero.focus();
			numero.select();
			return false;
		}		
	}
	return false;
}

function IsDecimales(decimales)
{
	var Template = /^[0-9.]+$/i //Formato de alfanumerico
	
	if(decimales.value!="") 
	{
		if (Template.test(decimales.value)) 
		{							}
		else
		{   alert("Precio no válido");
			decimales.focus();
			decimales.select();
		}		
	}
	return false;
}

function validarPasswd(pass) 
{	var espacios = true;
 	var cont = 0;
	
	// Este bucle recorre la cadena para comprobar que no todo son espacios
	while (espacios && (cont < pass.length)) 
	{  	if (pass.charAt(cont) != " ") 
		{	alert ("The password not have space blank");
			pass.focus();
			pass.select();
    	}
	    cont++;
	}
}
