// Funciones de botones	//1- Funci\u00F3n switchAndSubmit: establece el atributo action del tag form y hac eun submit del formulario.	//2- Funci\u00F3n JSMensajeIdioma: muestra por pantalla un mensaje en funci\u00F3n del idioma.	//3- Funci\u00F3n JSValidarSolicitud: valida los campos de la solicitud.	//4- Funci\u00F3n JSValidarDNI: permite comprobar si el NIF introducir es v\u00E1lido.	//5- Funci\u00F3n JSValidarCP: permite validar un c\u00F3digo postal.	//6- Funci\u00F3n JSBorrar: vac\u00EDa los campos del formulario.	function switchAndSubmit(){	if ( JSValidarSolicitud() == true ) {		var path = (location.pathname).toLowerCase();  								var posNSF = path.lastIndexOf(".nsf/") + 4;								var url = (location.pathname).substr(1, posNSF);		document.forms[0].action="/" + url + "PINWAG39?OpenAgent";		document.forms[0].submit();	}}function JSMensajeIdioma(cadSP, cadCT) {	if (language=="CT") {		window.alert(cadCT);	} else {		window.alert(cadSP);	}}function JSValidarSolicitud() {		var f = window.document.forms[0];		if (f.PISPDNITx.value != "" ) {		if ( (!f.PISPTDNITx[0].checked) && (!f.PISPTDNITx[1].checked) ) {			JSMensajeIdioma("Debe seleccionar el tipo de NIF/CIF.", "Ha de selccionar el tipus de NIF/CIF.");			f.PISPTDNITx[0].focus();			return false;		}		if (f.PISPDNITx.value.length != 9) {			JSMensajeIdioma("El NIF/CIF de empresa debe tener 9 car\u00E1cteres.", "El NIF/CIF d'empresa ha de tenir 9 car\u00E0cters.");			f.PISPDNITx.focus();			return false;			}		if (f.PISPTDNITx[0].checked) {			if (!JSValidarDNI(f.PISPDNITx.value)){				f.PISPDNITx.focus();				return false;			} else {				f.PISPDNITx.value = f.PISPDNITx.value.toUpperCase();			}		} else if (f.PISPTDNITx[1].checked) {			if (!JSValidarCIF(f.PISPDNITx.value)){				f.PISPDNITx.focus();				return false;			} else {				f.PISPDNITx.value = f.PISPDNITx.value.toUpperCase();			}		}	}	//Comunidad Aut\u00F3noma	if ( (f.PISPCoAuTx.options[f.PISPCoAuTx.selectedIndex].value == "") ||  (f.PISPCoAuTx.options[f.PISPCoAuTx.selectedIndex].value == "00") ) {		JSMensajeIdioma("La comunidad aut\u00F3noma es obligatoria.", "La comunitat aut\u00F2noma \u00E9s obligat\u00F2ria.");		f.PISPCoAuTx.focus();		return false;		}		//Email	if (f.PISPEmaiTx.value == "" ) {		JSMensajeIdioma("El email es obligatorio.", "L'email \u00E9s obligatori.");		f.PISPEmaiTx.focus();		return false;		} else {		var valor =f.PISPEmaiTx.value;		var posicion1 = valor.indexOf("@",0);		var posicion2 = valor.indexOf(".",0);		var longitud = valor.length;		var domain = valor.substring(posicion2+1,longitud);		var nombre = valor.substring(0,posicion1);		if ((posicion1==-1) || (posicion2==-1) || (nombre=="") || (domain=="")) {			JSMensajeIdioma("Se requiere una direcci\u00F3n email correcta", "Es requereix una adre\u00E7a email correcta.");			f.PISPEmaiTx.focus();			return false;		}	}	//Tema	if ( (f.PISPTemaTx.options[f.PISPTemaTx.selectedIndex].value == "") ||  (f.PISPTemaTx.options[f.PISPTemaTx.selectedIndex].value == "00") ) {		JSMensajeIdioma("Debe seleccionar la tem\u00E1tica de la consulta.", "Ha de seleccionar la tem\u00E0tica de la consulta.");		f.PISPTemaTx.focus();		return false;		}	if (f.PISPConsTx.value == "" ) {		JSMensajeIdioma("La consulta es obligatoria.", "La consulta \u00E9s obligat\u00F2ria.");		f.PISPConsTx.focus();		return false;		}	return true;}function JSValidarDNI(DNI) {	var restoCaract=DNI.substr(0,8);	var ultimoCaract=DNI.substr(8,1);	var num=ultimoCaract.charCodeAt(0);	ultimoCaract=ultimoCaract.toUpperCase();	var lista2=new Array("T","R","W","A","G","M","Y","F","P","D","X","B","N","J","Z","S","Q","V","H","L","C","K","E","T")		if (DNI.length!=9) {			if (language=="CT") {				window.alert ("El NIF ha de tenir 9 car\u00E0cters.");			} else {				window.alert("El NIF debe tener 9 car\u00E1cteres.");			}			return false;		}		if (ultimoCaract.charCodeAt(0)<65 | ultimoCaract.charCodeAt(0)>90) {			if (language=="CT") {				window.alert ("El format del NIF no \u00E9s correcte.");			} else {				window.alert("El formato del NIF no es correcto.")			}			return false; 		}				if (isNaN(restoCaract)==true) {			if (language=="CT") {				window.alert ("El format del NIF no \u00E9s correcte.");			} else {				window.alert("El formato del NIF no es correcto.")			}			return false;		} else {			var Modulo= (restoCaract%23);			if (lista2[Modulo]!=ultimoCaract) {				if (language=="CT")	{					window.alert ("El NIF no \u00E9s correcte.");				} else {					window.alert ("El NIF no es correcto.");				}				return false;			}		}	return true;}function JSValidarCP(cp){	if (isNaN(cp)==true) {			if (language=="CT") {				window.alert ("El codi postal ha de ser num\u00E8ric.");			} else {				window.alert("El c\u00F3digo postal debe ser num\u00E9rico.")			}			return false;	}		if (cp.length!=5) {		if (language=="CT") {			window.alert ("El codi postal ha de tenir 5 car\u00E0cters.");		} else {			window.alert("El c\u00F3digo postal debe tener 5 car\u00E1cteres.");		}		return false;	} 		return true;}function JSValidarNumContrato(cp,longitud,apartado){	if (isNaN(cp)==true) {			if (language=="CT") {				window.alert ("El n\u00FAmero de contracte ha de ser num\u00E8ric.");			} else {				window.alert("El n\u00FAmero de contrato debe ser num\u00E9rico.")			}			return false;	}		if (cp.length!=longitud) {		if (language=="CT") {			window.alert ("L'apartat " + apartado + " del n\u00FAmero de contracte ha de tenir " + longitud + " car\u00E0cters.");		} else {			window.alert("El apartado " + apartado + " del n\u00FAmero de contrato debe tener " + longitud + " car\u00E1cteres.");		}		return false;	} 		return true;}function JSValidarCIF(CIF) {	var midCIF, iniCIF, control, vMod2; //cadenas de texto	var sumaPares, sl1, sl2, sl3, sl4, sumaImpares, sumaTotal; //Enteros	var vMod, totalMod; //Enteros	var vCIF, isCIF; //Variables		var states=new Array("A","B","C","D","E","F","G","H","I","J");	vCIF=false;	isCIF=false;	CIF=CIF.toUpperCase();	if (CIF.length!=9) {		if (language=="CT") {			alert ("El CIF ha de tenir 9 car\u00E0cters.");		} else {			alert ("El CIF debe tener 9 car\u00E1cteres.");		}		return false;	} else {		isCIF=true;		midCIF=CIF.slice(1,8);		if (isNaN(midCIF)) {			if (language=="CT") {				alert ("El format del CIF no \u00E9s correcte.");			} else {				alert ("El formato del CIF no es correcto.");			}			return false;		} else {			iniCIF=CIF.substr(0,1);			if (!isNaN(iniCIF)) {				if (language=="CT") {					alert ("El format del CIF no \u00E9s correcte.");				} else {					alert ("El formato del CIF no es correcto.");				}				return false;			} else {				if (midCIF.indexOf(".")!=-1) {					if (language=="CT") {						alert ("El CIF no \u00E9s correcte.");					} else {						alert ("El CIF no es correcto.");					}					return false;				} else {					control=CIF.substr(CIF.length-1,1);					sumaPares=parseInt(midCIF.substr(1,1))+parseInt(midCIF.substr(3,1))+parseInt(midCIF.substr(5,1));					sl1=JSSubvalidCIF1(parseInt(midCIF.substr(0,1))*2);					sl2=JSSubvalidCIF1(parseInt(midCIF.substr(2,1))*2);					sl3=JSSubvalidCIF1(parseInt(midCIF.substr(4,1))*2);					sl4=JSSubvalidCIF1(parseInt(midCIF.substr(midCIF.length-1,1))*2);					sumaImpares=sl1+sl2+sl3+sl4;					sumaTotal=sumaPares+sumaImpares;					vMod=10 - (sumaTotal % 10);					vMod2=String(vMod).substr(String(vMod).length-1,1);				}			}		}	}	if (isCIF==true) {		if ( (iniCIF.toUpperCase()!="P" && iniCIF.toUpperCase()!="Q" && iniCIF.toUpperCase()!="S") && (!isNaN(control)) ) {			if (vMod2==control) {				vCIF=true;			}		} else {			if ( (iniCIF.toUpperCase()=="P" || iniCIF.toUpperCase()=="Q" || iniCIF.toUpperCase()=="S") || (isNaN(control)) ) {				if (states[vMod-1]==control) {					vCIF=true;				}			}		}		if (vCIF==false) {			if (language=="CT") {				alert ("El CIF no \u00E9s correcte.");			} else {				alert ("El CIF no es correcto.");			}			return false;		}	}	return true;}function JSSubvalidCIF1(num) {	if (num>=10) {		num=parseInt(String(num).substr(0,1))+parseInt(String(num).substr(1,1));	}	return num;}function JSBorrar(idioma) {	var mensaje;	var respuesta;	if (idioma == "CT") {		mensaje = "Desitja esborrar tots el camps del formulari?";	} else {				mensaje = "\u00BFDesea borrar todos los campos del formulario?";	}	respuesta = confirm(mensaje);	if (respuesta == true) {		window.document.forms[0].reset();		self.scrollTo(0,0);	}}
