function nfl_Get(v_id){
 var v_l=document.getElementById(v_id);
 if (document.all){ v_l=document.all[v_id]; }
 return v_l;
}

function nfl_AbsElePos(element) {
 if (typeof element == "string") element = nfl_Get(element);
 if (!element) return{top:0,left:0};
 var y = 0;
 var x = 0;
 while (element.offsetParent) {
  x += element.offsetLeft;
  y += element.offsetTop;
  element = element.offsetParent;
 }
 return {top:y,left:x};
}

function esData(cadena) {
 var patro = /^(\d{1,2})\/(\d{1,2})\/(\d{4})$/;
 var esPatro = cadena.match(patro);
 if (esPatro == null) { return false; }
 var dia = parseInt(esPatro[1],10);
 var mes = parseInt(esPatro[2],10);
 var any = parseInt(esPatro[3],10);
 if (any < 1900 || any > 2100 ) { return false; }
 if (mes>12 || mes<1) { return false; }
 if (dia>31 || dia<1) { return false; }
 if (mes==4 || mes==6 || mes==9 || mes==11) {
  if (dia>30) { return false; }
 }
 if (mes==2) {
  if (dia>29) { return false; }
  if (dia==29) {
   if (any % 4 == 0) {
    if (any % 100 != 0 || any % 400 == 0) { return true; }
   }
   return false;
  }
 }
 return(true)
}

function esTexte(cadena) {
 var exp = /\w/;
 if(exp.test(cadena)) {
  return true;
 }
 return false;
}

function esNumero(cadena) { //Controla q nomes siguin numeros
 var exp = /\D/;
 if(cadena!='') { //hem de mirar si la cadena esta buida sino no funciona 
  if(exp.test(cadena)) {
   return false;
  } else {
   return true;
  }
 }
 return false;

 /*
 if(decimals!=0) {
  var patro="/^(\d{"+enters+"}),(\d{"+decimals+"})$/";
  alert(patro);
 } else {
  No borrar! aixo es per millorar la funcio i controlar numero de enters i decimals
  var patro="/^(\d{"+enters+"})$/";
  alert(patro);
 }
 var er = /\d/;
 if(cadena=~er) {
   alert("si");
 } else {
   alert("no");
 }
 */

}

function esMail(cadena) {
 if(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/.test(cadena)) { //testeja la expessio, si no ho fico aixi no funciona !?!?! :< 
  return true;
 }
 return false;
}

function veureDIV(identi) {
 if (nfl_Get('id'+identi).style.display=="none") {
  nfl_Get('id'+identi).style.display="block";
  nfl_Get('img'+identi).style.display="none";
  nfl_Get('img'+identi+'_menos').style.display="inline";
 } else {
  nfl_Get('id'+identi).style.display="none";
  nfl_Get('img'+identi+'_menos').style.display="none";
  nfl_Get('img'+identi).style.display="inline";
 }
}
