<!--
function OpenPopup(url, scroll)
{
	window.open(url, "popup" + Math.floor(Math.random()*11),"width=1000,height=1000,scrollbars="+scroll+",titlebar=0,status=1,toolbar=0,menubar=0,location=0,resizable=1");
}

function PrintPage()
{
	bV = parseInt(navigator.appVersion);
	if (bV >= 4) window.print();
}

function IsNumeric(sText)
{
	var ValidChars = "0123456789";
	var IsNumber=true;
	var Char;

	for (i = 0; i < sText.length && IsNumber == true; i++)
	{
		Char = sText.charAt(i);
		if (ValidChars.indexOf(Char) == -1)
		{
			IsNumber = false;
		}
	}
	return IsNumber;
}

function IsEmpty(s)
{
	var whitespace = " \t\n\r";
	var i;

	if(s.length == 0)
	{
		return true;
	}

	for (i = 0; i < s.length; i++)
	{
		var c = s.charAt(i);

		if (whitespace.indexOf(c) == -1)
		{
			return false;
		}
	}
	return true;
}

function IsEmail(_email)
{
	var emailReg = /^[a-z][a-z-_0-9\.]+@[a-z-_=>0-9\.]+\.[a-z]{2,3}$/i
	return emailReg.test(_email);
}

function MM_preloadImages()
{
	var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
	var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
	if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore()
{
	var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d)
{
	var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
		d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
		if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
		for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
		if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage()
{
	var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
	if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function MM_nbGroup(event, grpName)
{
	var i,img,nbArr,args=MM_nbGroup.arguments;
	if (event == "init" && args.length > 2) {
		if ((img = MM_findObj(args[2])) != null && !img.MM_init) {
			img.MM_init = true; img.MM_up = args[3]; img.MM_dn = img.src;
			if ((nbArr = document[grpName]) == null) nbArr = document[grpName] = new Array();
			nbArr[nbArr.length] = img;
			for (i=4; i < args.length-1; i+=2) if ((img = MM_findObj(args[i])) != null) {
				if (!img.MM_up) img.MM_up = img.src;
				img.src = img.MM_dn = args[i+1];
				nbArr[nbArr.length] = img;
			} }
	} else if (event == "over") {
		document.MM_nbOver = nbArr = new Array();
		for (i=1; i < args.length-1; i+=3) if ((img = MM_findObj(args[i])) != null) {
			if (!img.MM_up) img.MM_up = img.src;
			img.src = (img.MM_dn && args[i+2]) ? args[i+2] : ((args[i+1])? args[i+1] : img.MM_up);
			nbArr[nbArr.length] = img;
		}
	} else if (event == "out" ) {
		for (i=0; i < document.MM_nbOver.length; i++) {
			img = document.MM_nbOver[i]; img.src = (img.MM_dn) ? img.MM_dn : img.MM_up; }
	} else if (event == "down") {
		nbArr = document[grpName];
		if (nbArr)
		for (i=0; i < nbArr.length; i++) { img=nbArr[i]; img.src = img.MM_up; img.MM_dn = 0; }
		document[grpName] = nbArr = new Array();
		for (i=2; i < args.length-1; i+=2) if ((img = MM_findObj(args[i])) != null) {
			if (!img.MM_up) img.MM_up = img.src;
			img.src = img.MM_dn = (args[i+1])? args[i+1] : img.MM_up;
			nbArr[nbArr.length] = img;
		}
	}
}

//Validamos el nif

function Verificar_NIF(valor,origen)
{
	var numero;
	var mensaje;
	var conletra;
	var resto;
	var letra_NIF;
	mensaje = "";

	valor = valor.toUpperCase();

	if (valor.substring(0,1)=="X")
	{
		valor=valor.substring(1,valor.length)
		//alert (valor);
	}
	numero = valor.substring(0,(valor.length - 1));
	//alert(numero.length);
	if ((numero.length>=7) && (!(isNaN(numero))))
	{
		//Verificacion de que no es un CIF
		if (isNaN(valor.substring(0,1)))
		{
			return (Verificar_CIF(valor));
		}

		letra_NIF = "";
		resto = (numero%23);
		switch (resto)
		{
			case 0:{letra_NIF = "T";break;}
			case 1:{letra_NIF = "R";break;}
			case 2:{letra_NIF = "W";break;}
			case 3:{letra_NIF = "A";break;}
			case 4:{letra_NIF = "G";break;}
			case 5:{letra_NIF = "M";break;}
			case 6:{letra_NIF = "Y";break;}
			case 7:{letra_NIF = "F";break;}
			case 8:{letra_NIF = "P";break;}
			case 9:{letra_NIF = "D";break;}
			case 10:{letra_NIF = "X";break;}
			case 11:{letra_NIF = "B";break;}
			case 12:{letra_NIF = "N";break;}
			case 13:{letra_NIF = "J";break;}
			case 14:{letra_NIF = "Z";break;}
			case 15:{letra_NIF = "S";break;}
			case 16:{letra_NIF = "Q";break;}
			case 17:{letra_NIF = "V";break;}
			case 18:{letra_NIF = "H";break;}
			case 19:{letra_NIF = "L";break;}
			case 20:{letra_NIF = "C";break;}
			case 21:{letra_NIF = "K";break;}
			case 22:{letra_NIF = "E";break;}
			default:{break;}
		}
		conletra = numero + letra_NIF
		if (valor.substring(valor.length,valor.length-1)!=conletra.substring(conletra.length,conletra.length-1))
		{
			alert("El NIF " + valor + " es INCORRECTO\nD.N.I. Correcto: " + conletra + ". Por favor, verifíquelo.");
			origen.focus();
			return (0);
		}
		else
		{
			//alert("El NIF " + valor + " es CORRECTO");
			return(1);
		}
	}
	else
	{
		alert("El NIF que introdujo no es un NIF válido. Debe tener 7 u 8 caracteres más la letra correspondiente.");
		origen.focus();
		return (0);
	}
	return(0);
}

function ValidaCIF(F)
{
	var v1 = new Array(0,2,4,6,8,1,3,5,7,9);
	var temp = 0;
	var temp1;


	for( i = 2; i <= 6; i += 2 )
	{
		temp = temp + v1[ parseInt(F.substr(i-1,1)) ];
		temp = temp + parseInt(F.substr(i,1));
	};

	temp = temp + v1[ parseInt(F.substr(7,1)) ];

	temp = (10 - ( temp % 10));

	if (temp == 10)
	{ temp = 0; }

	if (F.substr(F.length-1,1)==temp)
	{
		return true;
	}
	else
	{
		alert ("El CIF que introdujo no es válido.\n");
		return (0);
	}
}

function Trim(s)
{
	return LTrim(RTrim(s));
}

function LTrim(s){
	var i=0;
	var j=0;

	for(i=0; i<=s.length-1; i++)
	{
		if(s.substring(i,i+1) != ' ')
		{
			j=i;
			break;
		}
	}
	return s.substring(j, s.length);
}

function RTrim(s)
{
	var j=0;

	for(var i=s.length-1; i>-1; i--)
	{
		if(s.substring(i,i+1) != ' ')
		{
			j=i;
			break;
		}
	}
	return s.substring(0, j+1);
}

// Si el primer caracter es una letra es un CIF, a no ser que tenga una X que sería in NIE
function VerificaDocumento(documento,origen)
{
	if (isNaN(documento.substring(0,1)) && documento.substring(0,1)!="X" && documento.substring(0,1)!="x")
	{
		// Es un CIF
		var resul = false;
		var temp = documento.toUpperCase(); // Pasa a mayúsculas

		if (!/^[A-Za-z0-9]{9}$/.test(temp))  // Son 9 dígitos?
		{
			alert ("Longitud incorrecta, un CIF consta de 9 dígitos");
			return false;
		}
		else if (!/^[ABCDEFGHKLMNPQSX]/.test(temp)) // Es una letra de las admitidas ?
		{
			alert("El primer dígito es incorrecto, debe ser una letra de las siguientes: A,B,C,D,E,F,G,H,K,L,M,N,P,Q,S ");
			return false;
		}

		var numCIF = documento.substring(1,8);
		if(isNaN(numCIF))
		{
			alert("El CIF que ingresó no es correcto. Después de la primer letra, debe contener al menos 7 dígitos numéricos.");
			return false;
		}
		var corrCIF;
		corrCIF = ValidaCIF(documento);
		if (corrCIF == 0)
		{
			return(0);
		}
	}
	else
	{
		//alert("aquí 1");
		// Es un NIF
		var correcto

		if (documento.substring(0,1)=="X")
		{
			var NIF=documento.substring(1,8);
		}
		else
		{
			var NIF=documento;

		}

		correcto = Verificar_NIF(documento,origen);
		//alert("aquí 2");
		//alert("correcto " + correcto);
		if (correcto != 1)
		{

			return false;
		}
	}
	return true;
}

/**
* Accede directamente a un elemento del documento
*
* @param string Identificador del elemento
* @return mixed
* @access public
*/

function $(id)
{
	var o = document.getElementById(id);
	if (!o)
	{
		alert('El id '+id+' no existe!');
		return document;
	}
	return o;
}

/**
* Devuelve el valor de un elemento
*
* @param string Identificador del elemento
* @return mixed
* @access public
*/

function $F(id)
{
	var o = document.getElementById(id);
	if (!o)
	{
		alert('El id '+id+' no existe!');
		return document;
	}
	return o.value;
}

-->
