
function comprobar(){
	msg = 'Por favor revise el valor de los siguientes campos:';
	ok=1;

	if ((document.enviar.nombre.value=="")) {
		ok=0;	
		msg += '\n- Nombre';
	}

	if ((document.enviar.email.value=="")) {
		ok=0;	
		msg += '\n- E-mail';
	}
	if ( (document.enviar.telefono.value!="") && (!esNumero(document.enviar.telefono.value)) ) {
		ok=0;	
		msg += '\n- Teléfono debe ser un Número';
	}
	if ((document.enviar.email.value!="") && (!esMail(document.enviar.email.value)) ) {
		ok=0;	
		msg += '\n- Dirección de Correo no es correcta';
	}

	if ((document.enviar.texto.value=="")) {
		ok=0;	
		msg += '\n- Comentario';
	}

	if (ok == 0) 
		alert(msg);
	else
		document.enviar.enviarok.value=1;
}




//FUNCIONES PARA VERIFICACIÓN DE DATOS EN FORMULARIOS


//  ----------------------------------------------------------------------------------
//  function esMail(str)
//  	devuelve TRUE si la la cadena que se le pasa como parámetro es una dirección de mail
//  ----------------------------------------------------------------------------------
function esMail(str) {
  	return (str.indexOf(".") > 2) && (str.indexOf("@") > 0);
 }

//  ----------------------------------------------------------------------------------
//   function esNumero(cad)
//  	devuelve TRUE si la cadena que se le pasa como parámetro es un número
//  ----------------------------------------------------------------------------------	
function esNumero(cad) {
	var ok=true;
	if (cad.length>0) {
		for (i=1;i<=cad.length;i++)
			if (((cad.substring(i-1,i)>"9") || (cad.substring(i-1,i)<"0")) && (cad.substring(i-1,i)!=".")) {
				ok=false;
				break;
		}
	} else ok=false;
	if (ok) return true;
		else return false;
}	
	
//  ----------------------------------------------------------------------------------
//   function esTelefono(cad)
//  	devuelve TRUE si la cadena que se le pasa como parámetro es un número de teléfono
//  ----------------------------------------------------------------------------------		
function esTelefono(cad){
   var ValidChars = " 0123456789.-";
   var esTelefono=true;
   var Char;

   for (i = 0; i < cad.length && esTelefono == true; i++) { 
	  Char = cad.charAt(i); 
	  if (ValidChars.indexOf(Char) == -1)
		  esTelefono = false;
   }
   return esTelefono;
}

//  ----------------------------------------------------------------------------------
//  function DifFecha (fechIni,fechfin)
//  	devuelve TRUE si la diferencia entre dos fechas es mayor de 1 dia
//  ----------------------------------------------------------------------------------
function difFecha (fechIni,fechFin) {
   //Obtiene los datos del formulario
   CadenaFecha1 = fechIni;
   CadenaFecha2 = fechFin;
   
   //Obtiene dia, mes y año
   var fecha1 = new fecha( CadenaFecha1 );
   var fecha2 = new fecha( CadenaFecha2 );
      
   //Obtiene objetos Date
   var miFecha1 = new Date( fecha1.anio, fecha1.mes, fecha1.dia );
   var miFecha2 = new Date( fecha2.anio, fecha2.mes, fecha2.dia );
   
   //Resta fechas y redondea
   var diferencia = miFecha1.getTime() - miFecha2.getTime();
   if (diferencia>0) //Fecha Ini > Fecha Fin
	return true;
   else 	
	return false;
}

//  ----------------------------------------------------------------------------------
//  function DifDias (fechIni,fechfin)
//  	devuelve el numero de dias de la diferencia entre dos fechas 
//  ----------------------------------------------------------------------------------
function difDias (fechIni,fechFin) {
   //Obtiene los datos del formulario
   CadenaFecha1 = fechIni;
   CadenaFecha2 = fechFin;
   
   //Obtiene dia, mes y año
   var fecha1 = new fecha( CadenaFecha1 );
   var fecha2 = new fecha( CadenaFecha2 );
      
   //Obtiene objetos Date
   var miFecha1 = new Date( fecha1.anio, fecha1.mes, fecha1.dia );
   var miFecha2 = new Date( fecha2.anio, fecha2.mes, fecha2.dia );
   
   //Resta fechas y redondea
	var diferencia=(Math.round((Date.parse(miFecha2)-Date.parse(miFecha1))/(24*60*60*1000))*1) 

	return diferencia;
   
}






//  ----------------------------------------------------------------------------------
//  function fecha( cadena )
//  	devuelve dia, mes y año por separado de la cadena que se le pasa como parametro
//  ----------------------------------------------------------------------------------
function fecha( cadena ) {
   //Separador para la introduccion de las fechas
   var separador = "/";

   //Separa por dia, mes y año
   if ( cadena.indexOf( separador ) != -1 ) {
        var posi1 = 0;
        var posi2 = cadena.indexOf( separador, posi1 + 1 );
        var posi3 = cadena.indexOf( separador, posi2 + 1 );
        this.dia  = cadena.substring( posi1, posi2 );
        this.mes  = cadena.substring( posi2 + 1, posi3 );
        this.anio = cadena.substring( posi3 + 1, cadena.length );
   } else {
        this.dia  = 0;
        this.mes  = 0;
        this.anio = 0;   
   }
}

//  ----------------------------------------------------------------------------------
//   function esFecha(fech)
//  	devuelve TRUE si la fecha que se le pasa es válida o FALSE en caso contrario
//  ----------------------------------------------------------------------------------
function esFecha(fech) {
	i=0;
	z=0;
	dia="";

	separador1=fech.indexOf('/');
	resto=fech.substring(separador1+1,fech.length);		
	separador2=resto.indexOf('/');		
		
	if ((separador1<=0) || (separador2<=0))
		return false;
		
	while (fech.charAt(i) != '/') {
		dia=dia+fech.charAt(i);
		i=i+1;
	}
	
	mes="";
	i=i+1;
	
	while (fech.charAt(i) != '/') { 
		mes=mes+fech.charAt(i);
		i=i+1;
	}					
	
	anio="";
	i=i+1;
	
	while (fech.charAt(i) != ''){
		anio=anio+fech.charAt(i);
		i=i+1;
	} 
	
	var ok=true;
	var bisiesto=false;
	if (esNumero(dia) && esNumero(mes) && esNumero(anio)) {
		if(anio%4==0) bisiesto=true;
		if (mes>0 && mes<13) {
			if (dia>0 && dia<32) {
				if ((mes==4 || mes==6 || mes==9 || mes==11) && dia==31) ok=false
				if (mes==2) {
					if (bisiesto && dia>29) ok=false;
					if (!bisiesto && dia>28) ok=false;
				}
			} else ok=false;
		} else ok=false;
	} else ok=false;
	if (ok) {
		return true;
	}else return false;
}	

