// Aquesta funció lleva tots els espais dels camps tant de darrera com de davant
function sense_espais1(cadena){
  for (j=0; j<cadena.length; j++){
  	if (cadena.charAt(j)!=" "){cadena=cadena.substring(j,cadena.length);break }
  	if(j==cadena.length-1){cadena="";return cadena }    
   }
  for (j=cadena.length-1;j>=0; j--){
  	if (cadena.charAt(j)!=" "){cadena=cadena.substring(0,j+1);break }
  }
  return cadena    
}

// Aquesta funció lleva tots els espais d'una cadena
function sense_espais2(cadena){

var cadena_nova = "";

  for (j=0; j<cadena.length; j++){
  	if (cadena.charAt(j)!=" "){cadena_nova = cadena_nova + cadena.charAt(j);}
   }
 if (cadena_nova.length == 0) return cadena
else  return cadena_nova
}

function alert1(str2) { alert(traduir(str2)) }

function confirm1(str1) { return confirm(traduir(str1)) }

function traduir(str) {

var x = str.replace(/&iexcl;/g,"\xA1");
	x = x.replace(/&iquest;/g,"\xBF");
	x = x.replace(/&Agrave;/g,"\xC0");
	x = x.replace(/&agrave;/g,"\xE0");
	x = x.replace(/&Aacute;/g,"\xC1");
	x = x.replace(/&aacute;/g,"\xE1");
	x = x.replace(/&Acirc;/g,"\xC2");
	x = x.replace(/&acirc;/g,"\xE2");
	x = x.replace(/&Atilde;/g,"\xC3");
	x = x.replace(/&atilde;/g,"\xE3");
	x = x.replace(/&Auml;/g,"\xC4");
	x = x.replace(/&auml;/g,"\xE4");
	x = x.replace(/&Aring;/g,"\xC5");
	x = x.replace(/&aring;/g,"\xE5");
	x = x.replace(/&AElig;/g,"\xC6");
	x = x.replace(/&aelig;/g,"\xE6");
	x = x.replace(/&Ccedil;/g,"\xC7");
	x = x.replace(/&ccedil;/g,"\xE7");
	x = x.replace(/&Egrave;/g,"\xC8");
	x = x.replace(/&egrave;/g,"\xE8");
	x = x.replace(/&Eacute;/g,"\xC9");
	x = x.replace(/&eacute;/g,"\xE9");
	x = x.replace(/&Ecirc;/g,"\xCA");
	x = x.replace(/&ecirc;/g,"\xEA");
	x = x.replace(/&Euml;/g,"\xCB");
	x = x.replace(/&euml;/g,"\xEB");
	x = x.replace(/&Igrave;/g,"\xCC");
	x = x.replace(/&igrave;/g,"\xEC");
	x = x.replace(/&Iacute;/g,"\xCD");
	x = x.replace(/&iacute;/g,"\xED");
	x = x.replace(/&Icirc;/g,"\xCE");
	x = x.replace(/&icirc;/g,"\xEE");
	x = x.replace(/&Iuml;/g,"\xCF");
	x = x.replace(/&iuml;/g,"\xEF");
	x = x.replace(/&Ntilde;/g,"\xD1");
	x = x.replace(/&ntilde;/g,"\xF1");
	x = x.replace(/&Ograve;/g,"\xD2");
	x = x.replace(/&ograve;/g,"\xF2");
	x = x.replace(/&Oacute;/g,"\xD3");
	x = x.replace(/&oacute;/g,"\xF3");
	x = x.replace(/&Ocirc;/g,"\xD4");
	x = x.replace(/&ocirc;/g,"\xF4");
	x = x.replace(/&Otilde;/g,"\xD5");
	x = x.replace(/&otilde;/g,"\xF5");
	x = x.replace(/&Ouml;/g,"\xD6");
	x = x.replace(/&ouml;/g,"\xF6");
	x = x.replace(/&Oslash;/g,"\xD8");
	x = x.replace(/&oslash;/g,"\xF8");
	x = x.replace(/&Ugrave;/g,"\xD9");
	x = x.replace(/&ugrave;/g,"\xF9");
	x = x.replace(/&Uacute;/g,"\xDA");
	x = x.replace(/&uacute;/g,"\xFA");
	x = x.replace(/&Ucirc;/g,"\xDB");
	x = x.replace(/&ucirc;/g,"\xFB");
	x = x.replace(/&Uuml;/g,"\xDC");
	x = x.replace(/&uuml;/g,"\xFC");
	
	x = x.replace(/\"/g,"\x22");
	x = x.replace(/\'/g,"\x27");
	x = x.replace(/\</g,"\x3C");
	x = x.replace(/\>/g,"\x3E");
	x = x.replace(/\[/g,"\x5B");
	x = x.replace(/\]/g,"\x5D");

	x = x.replace(/&cent;/g,"\xA2"); 
	x = x.replace(/&pound;/g,"\xA3");
	x = x.replace(/&euro;/g,"\u20AC"); 
	x = x.replace(/&copy;/g,"\xA9"); 
	x = x.replace(/&reg;/g,"\xAE"); 
	x = x.replace(/&ordf;/g,"\xAA"); 
	x = x.replace(/&ordm;/g,"\xBA"); 
	x = x.replace(/&deg;/g,"\xB0"); 
	x = x.replace(/&plusmn;/g,"\xB1");
	x = x.replace(/&times;/g,"\xD7"); 
	
	return x
}

function comprova_text(Obj, msj){

var valor = sense_espais2(Obj.value);

if (valor.length < 3) {
	alert1(msj);
	Obj.focus(); 
	return false;
};
return true
}

function comprova_nif(Obj, msj){

var lletres = ['T', 'R', 'W', 'A', 'G', 'M', 'Y', 'F', 'P', 'D', 'X', 'B', 'N', 'J', 'Z', 'S', 'Q', 'V', 'H', 'L', 'C', 'K', 'E', 'T'];

var valor = sense_espais2(Obj.value);

/*if (valor.length != 9) {
	alert1(msj+"\n\nLa longitud no &eacute;s la correcte per un NIF o CIF de 8 xifres + 1 lletra.");
	Obj.focus(); 
	return false;
};*/
//Comprovació de que sigui un NIF
if (!(/^\d{8}[A-Z]$/.test(valor))) {
	//Comprovació d'una lletra i 8 dígits
	if (!(/^[A-Z]\d{8}$/.test(valor))) {
		//Comprova que siqui lletra i 6 dígits
		if (!(/^[A-Z]\d{6}$/.test(valor))) {
		//Comprova que sigui 7 dígits i lletra
			if (!(/^d{7}[A-Z]$/.test(valor))) {
				//Comprova que sigui lletra 6 a 8 dígits i lletra
				if (!(/^[A-Z]\d{6,8}[A-Z]$/.test(valor))) {
					if (idioma == "cas") { alert1(msj+"\n\nEl formato no es el correcto.\n Formatos permitidos: \n 1 letra + 8 cifras num&eacute;ricas\n 1 letra + 6 cifras num&eacute;ricas\n 7 cifras num&eacute;ricas + 1 letra\n 8 cifras num&eacute;ricas + 1 letra.\n\n Elimina espacios en blanco y car&aacute;cteres extra&ntilde;os"); }
	else if (idioma == "eng") { alert1(msj+"\n\nThe format is incorrect.\n Allowed formats: \n 1 leter + 8 digits\n 1 leter + 6 digits\n 7 digits + 1 leter\n 8 digits + 1 leter.\n\n Delete spaces and foreign caracters"); }
	else { alert1(msj+"\n\nEl format no &eacute;s el correcte.\n Formats permesos: \n 1 lletra + 8 xifres num&egrave;riques\n 1 lletra + 6 xifres num&egrave;riques\n 7 xifres num&egrave;riques + 1 lletra\n 8 xifres num&egrave;riques + 1 lletra.\n\n Elimina espais en blanc i car&agrave;cters extranys"); }
					Obj.focus(); 
					return false;
				};
			};
		};
	};
} else {
	//Comprova lletra correcte del NIF
	if (Obj.value.charAt(8) != lletres[(valor.substring(0,8))%23]) {
		if (idioma == "cas") { alert1(msj+"\n\nLa letra del NIF no se corresponde con el n&uacute;mero introducido.\nIntroduce la letra en may&uacute;sculas"); }
	else if (idioma == "eng") { alert1(msj+"\n\nThe NIF leter does not correspont with the NIF number.\n Insert in capital mode"); }
	else { alert1(msj+"\n\nLa lletra del NIF no es correspon amb el n&uacute;mero introdu&Iuml;t.\nIntrodueix la lletra en may&uacute;scules"); }
		Obj.focus(); 
		return false;
	};
};


//Comprovació de 10 dígits i dues lletres
/*if (!(/^\d{10}[A-Z]{2}$/.test(valor))) {
	alert1(msj+"\n\nEl format no &eacute;s el de un CIF de 10 xifres i 2 lletres.\n Elimina espais en blanc i car&agrave;cters extranys");
	Obj.focus(); 
	return false;
}; */

return true
}

function comprova_telefon(Obj, msj){

var valor = sense_espais2(Obj.value);

//Comprova si es tracta d'un número internacional
if (Obj.value.charAt(0) == "+") {
//Comprovació de que sigui un teléfon internacional de prefitxe + 9 xifres
if (!(/^\+\d{2,3}\s\d{9}$/.test(Obj.value))) {
	if (idioma == "cas") { alert1(msj+"\n Introduce un espacio en blanco entre el prefijo internacional y el n&uacute;mero de tel&eacute;fono."); }
	else if (idioma == "eng") { alert1(msj+"\n Please insert one space between the international prefix and the number of telephone."); }
	else { alert1(msj+"\n Introdueix un espai en blanc entre el prefixe internacional i el n&uacute;mero de tel&egrave;fon."); }
	
	Obj.focus(); 
	return false;
};

} else {
//És un número nacional
if (valor.length < 9) {
	alert1(msj);
	Obj.focus(); 
	return false;
};
//Comprovació de que sigui un teléfon de 9 xifres
if (!(/^\d{9}$/.test(Obj.value))) {
	alert1(msj);
	Obj.focus(); 
	return false;
};

};

return true
}

function comprova_cp(Obj, msj){

//Comprovació de que sigui un CP de 5 xifres
if (!(/^\d{5}$/.test(Obj.value))) {
	alert1(msj);
	Obj.focus(); 
	return false;
};
return true
}

function comprova_num(Obj, msj){

var valor = sense_espais2(Obj.value);

if (valor.length < 3) {
//Comprovació de que sigui un número
if (!(/^\d{1,2}$/.test(Obj.value))) {
	alert1(msj);
	Obj.focus(); 
	return false;
};
} else {
//Comprovació de que sigui un número
if (!(/^\d{3}$/.test(Obj.value))) {
	alert1(msj);
	Obj.focus(); 
	return false;
};
};
return true
}

function comprova_num11(Obj, msj){

var valor = sense_espais2(Obj.value);

if (valor.length < 1) {
	alert1(msj);
	Obj.focus(); 
	return false;
};
return true
}

function comprova_preu(Obj, msj){

//Comprovació de que sigui un número
if (!(/^\d{1,2}\.\d{1,2}$/.test(Obj.value))) {
	alert1(msj);
	Obj.focus(); 
	return false;
};
return true
}



function comprova_pais(Obj, msj){

//Comprovació de que sigui un Pais de la llista
if (Obj.value == "a") {
	alert1(msj);
	Obj.focus(); 
	return false;
};
return true
}

function comprova_email(Obj, msj){

var valor = sense_espais2(Obj.value);
if ((Obj.value.indexOf ('@', 0) ==-1)||(Obj.length < 3)) {
	alert1(msj);
	Obj.focus(); 
	return false;
};
return true
}

function canvia_div(capa, text) {

 	if (document.getElementById) {
		Obj = document.getElementById(capa).innerHTML = text;
	} else if (isNetscape4) {
		Obj=document.layers[capa].innerHTML = text;
	} else if (isIE4) {
		Obj=document.all[capa].innerHTML = text;
	}
}

function arrodonir(num)
{
var tot;

//if ((num*100%100)>=0.5) var result = Math.round(num*100)/100+0.01;
//else 

var result = Math.round(num*100)/100;

var cadena = result.toString();
var pos = cadena.indexOf('.')
if (pos < 0) tot = cadena + ".00";
else {
	pos = pos +4; 
	tot = cadena.substr(0, pos);
}
return tot;

}

//evita que es pitji enter en tot el formulari
function pulsar(e){
tecla = (document.all) ? e.keyCode : e.which;
return (tecla!=13);
}


function comprova(Obj, idioma)
{ 
var m1, m2, m3, m4;

	if (idioma == "cas") { 
	m1 = "Introduce tu nombre y apellidos de forma v&aacute;lida!!";
	m2 = "Introduce un correo electr&oacute;nico correcto y v&aacute;lido!!";
	m3 = "Introduce un nombre v&aacute;lido como nombre de la Entidad!!";
	m4 = "Introduce alguna cuesti&oacute;n o comentario!!";
	}  else { 
	m1 = "Introdueix un nom v&agrave;lid";
	m2 = "Introdueix un correu electr&ograve;nic correcte v&agrave;lid";
	m3 = "Introdueix un nom v&agrave;lida com a nom de l'Entitat!!";
	m4 = "Introdueix qualque comentari o pregunta!!";
	}
if (!comprova_text(Obj.nom, m1)) { return false;}
if (!comprova_email(Obj.email, m2)) {return false;}
if (!comprova_text(Obj.entitat, m3)) {return false;}
if (!comprova_text(Obj.comentarios, m4)) { return false;}
return true;
}

function comprova(Obj, idioma)
{ 
var m1, m2, m3, m4;

	if (idioma == "cas") { 
	m1 = "Introduce tu nombre y apellidos de forma v&aacute;lida!!";
	m2 = "Introduce un correo electr&oacute;nico correcto y v&aacute;lido!!";
	m3 = "Introduce un nombre v&aacute;lido como nombre de la Entidad!!";
	m4 = "Introduce alguna cuesti&oacute;n o comentario!!";
	}  else { 
	m1 = "Introdueix un nom v&agrave;lid";
	m2 = "Introdueix un correu electr&ograve;nic correcte v&agrave;lid";
	m3 = "Introdueix un nom v&agrave;lida com a nom de l'Entitat!!";
	m4 = "Introdueix qualque comentari o pregunta!!";
	}
if (!comprova_text(Obj.nombre, m1)) { return false;}
if (!comprova_email(Obj.emailtuyo, m2)) {return false;}
if (!comprova_text(Obj.comentarios, m4)) { return false;}
return true;
}