// funciones javascript comunes al proyecto

// funcion que valida la direccion de email
// Parametros: campo (dirección de correo electrónico a validad)
	function validarEmail(campo) {
		if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,5})+$/.test(campo)) return true;
		else return false;
	}

	function validarWeb(campo) {
		if(/^www(\.\w+)+(\.\w{2,4})$/.test(campo)) return true;
		else if(/^www(\.\w+)+(\.\w{2,4})+(\/\w+\.+\w+)$/.test(campo)) return true;
		else if(/^www(\.\w+)+(\.\w{2,4})+(\/+\w+)$/.test(campo)) return true;
		else if(/^www(\.\w+)+(\.\w{2,4})+(\/+\w+\/)$/.test(campo)) return true;
		else if(/^www(\.\w+)+(\.\w{2,4})+(\/+\w+\/)+(\w+\.+\w+)$/.test(campo)) return true;
		else if(/^\w+(\.\w+)+(\.\w{2,4})$/.test(campo)) return true;
		else if(/^\w+(\.\w+)+(\.\w{2,4})+(\/\w+\.+\w+)$/.test(campo)) return true;
		else if(/^\w+(\.\w+)+(\.\w{2,4})+(\/+\w+)$/.test(campo)) return true;
		else if(/^\w+(\.\w+)+(\.\w{2,4})+(\/+\w+\/)$/.test(campo)) return true;
		else if(/^\w+(\.\w+)+(\.\w{2,4})+(\/+\w+\/)+(\w+\.+\w+)$/.test(campo)) return true;
		else if(/^\w+(\.\w+)+(\.\w{2,4})+(\/+\w+\/)+((\w+\/){0,}|(\w+\.+\w+){0,})*$/.test(campo)) return true;
		else return false;
	}

	function FormatoWeb(campo) {
		return (/^(http(s)?:\/\/)?([\w-]+\.)+[\w-]+(\/[\w- .\/?%&=]*)?$/.test(campo))
	}

	function validarWeb2(campo) {
		return (/^([\w-]+\.)+[\w-]+(\/[\w- .\/?%&=]*)?$/.test(campo))
	}

	function validarUrl(campo) { alert ('URL: '+campo);
		if(/^\w+([\.]?\w+)*.\w+([\.]?\w+)*(\.\w{2,3})+$/.test(campo)) return true;
		else return false;
	}


// Funcion que valida una fecha
// Parametros: f (campo con la fecha a validad) text(texto para que salga en la expresión de error)
function valfecha(f,text){
var ip7=0;	
// Array con los dias que tiene un mes
dm=new Array('31','28','31','30','31','30','31','31','30','31','30','31');
lf=f.length;
if (lf>=1){		   
  for(var i=0;i<lf;i++){
  valor=f.slice(i,i+1);
  switch (i){
	case 2:
	  if((valor!="/")){ip7=1;} 
	  break; 
	case 5:
	  if((valor!="/")){ip7=1;}
 	  break;
	default:
	 if(isNaN(valor)){ip7=1;} 
  }// Cierre del switch
  }// Cierre del for
if(ip7==1){
  //err=err+"\t"+text+": No introduzca letras en la fecha\n";	
  err=err+"\t"+text+": Formato de fecha incorrecto\n";	
  err=err+"\tEl formato de la fecha es: dd/mm/aaaa\n";
}else if (lf<10){
  //err=err+"El número de dígitos de la fecha es 10\n"
  err=err+"\t"+text+": Formato de fecha incorrecto\n";	
}else{
  if ((parseInt(f.slice(6,10))>1700)&&(parseInt(f.slice(6,10))<2500)){
	 if(parseInt(f.slice(6,10))%4==0) dm[1]=29;
	 if((parseInt(f.slice(3,5)))<13){
		dia=dm[parseInt(f.slice(3,5))-1];
	    if(parseInt(f.slice(0,2))>dia){err=err+"\t"+text+": el día no es válido\n";}
	 }else{
	 err=err+"\t"+text+": el mes no es válido\n";
	 }
  }else{
   err=err+"\t"+text+": el año no es válido\n";}
}
}
}
/* 
<sumary>Funcion que solo permite un nº determinado de decimales </sumary>
<param name="campo" type="string">Nombre del campo</param>
<param name="numdec" type="integer">Nº decimales permitidos</param>
*/
	function f_decimales(campo,numdec){
		var obj = document.form;
		posicion = eval('obj.'+campo+'.value.indexOf(".")');
		if ( posicion != -1 ){
			numcrts = eval('obj.'+campo+'.value.substring('+posicion+').length');
			if ( numcrts > parseInt(numdec+1) ){
				texto = eval('obj.'+campo+'.value.length');
				eval('obj.'+campo+'.value = obj.'+campo+'.value.substring(0,'+parseInt(texto-1)+')');
			}
		}
	}
