<!--
   //*************************************************************************
  	// Declaracion de variables y constantes
	var ObjetoErroneo 		= null;
	var msgError			= "";
	var nombreNavegador  	= navigator.appName;
   	var versionNavegador 	= parseInt(navigator.appVersion);
   	var NS = false;
	var IE = false;	

	var meses 				= [31,30,31,30,31,30,31,31,30,31,30,31];  
	var objFecha			= null;    
	
	
	var validacionForm		= false;
	var enviado				= false;
	var idEnviado			= null;
	var lengua				= "castellano";

	var sVectorObj			= null;
	var sVectorCapt			= null;
	var EURO				= 166.386;
/*	
	var imgcheckon  = new Image();
	imgcheckon.src="/formularios/mtoweb/images/checkon.gif";
	var imgcheckoff = new Image();
	imgcheckoff.src="/formularios/mtoweb/images/checkoff.gif";
*/
    var rightButton = true;
    var enviosForm = 0;
    var permitirMasUnEnvio = true;
	//objeto fecha para los calendarios
	var fechaObj = null;
	var sTipoDoc = null;

	
//	document.onmousedown = right;
/*
	function right(e) {
		if (navigator.appName == 'Netscape' && e.which == 3) {
			return false;
		}else{
			if (navigator.appName == 'Microsoft Internet Explorer' && e.button==2) {
                if(!rightButton) alert('Operacion no permitida');
                return false;
			}
			return true;
		}
	}
*/


    saveCookie("prjs","Acepta");
    if( readCookie("prjs")!=null ){
	    deleteCookie("prjs");
    }else{
        document.location="/formularios/mtoweb/paginas/Configcookies.html"
    }


	//Establecer hoja de estilo personalizada para clave sica
	setHojaEstilo();


	function setHojaEstilo(){
		//(CSS Genérico)
		var hojaEstilo="/formularios/mtoweb/css/corporativo";
		var iLongStyleSheets = 0;
		try{
			iLongStyleSheets = parent.document.styleSheets.length;
		}catch(Exception){
			iLongStyleSheets = 0;
		}
		try
		{
			seguir="SI";
			var mifrmpadre = window.parent;
			var mifrmActual = window;
			while ((mifrmpadre != null) && (mifrmpadre!=mifrmActual) && (seguir=="SI"))
			{
					try
					{
						var sica = mifrmpadre.getPARAMETRO("MEDIADOR_ESCRITORIO");	
						var pers = mifrmpadre.getPARAMETRO("PERSONALIZADO");						
						if(pers!=null && pers=="SI")
						{
							//(CSS Caja)
							var hojaEstilo2 = hojaEstilo + "_"+sica+".css";	
							document.writeln("<link rel='styleSheet' href='"+hojaEstilo2+"'>");
							//Para cortar el bucle y que no siga mirando
							seguir="NO";

							//El codigo de abajo define un tercer .css a importar, que será el de la plantilla que posea el usuario.
							//Por ejemplo, en el monte, para un usuario con la plantilla 2098_800x600_CORR, la bateria de css
							//a importar será la siguiente:
							//	corporativo.css							(Generico)
							//	corporativo_2098.css					(Caja)
							//	corporativo_2098_800x600_CORR.css		(Especifico plantilla)
							// Además el orden de sobreescritura es de abajo a arriba, es decir, el más especifico sobreescribe al 
							// generico, ya que el último .css que se indica es el que mayor prioridad tiene.
							//Pueden surgir problemas cuando el nombre de la plantilla es similar al SICA o CAJA, ya que se importará
							//dos veces el mismo css. La solución es cambiar el nombre a la plantilla del usuario y solucionado.
							try
							{
								var plant_usu = mifrmpadre.getPARAMETRO("TEMPLATE");
								if (plant_usu!=null && plant_usu!="")
								{
									var hojaEstilo3 = hojaEstilo + "_"+plant_usu+".css";	
									document.writeln("<link rel='styleSheet' href='"+hojaEstilo3+"'>");
								}
							}
							catch (Exception)
							{
								//NO HAGO NADA
							}
						}
					}catch(Exception){
						//alert(Exception.description +"  " + Exception.number);
					}
					mifrmActual = mifrmpadre;
					mifrmpadre = mifrmActual.parent;
			}
		}
		catch (Exception)
		{
		}
	}



	function selLengua(lenguaje){
		lengua=lenguaje;
		setLengua(lenguaje); 
	}

	// Pone el switch de validacion a true
	function tienesQueValidar(){
		validacionForm  = true;
		ObjetoErroneo 	= null;
		msgError		= "";
	}

	//Vuelve a colocar la variable enviado a false despues de 10 segundos
	function mantenEnviado(){
		enviado = false;
	}


    function selPestana(pestana,carpeta){

		if(document.forms[0].NAVPESTANAACTIVA && document.forms[0].NAVCARPETAACTIVA && onclickPestana(pestana,carpeta)){
            document.forms[0].NAVPESTANAACTIVA.value=pestana;
            document.forms[0].NAVCARPETAACTIVA.value=carpeta;
			// 2002/12/13 Esta comprobación se añade para que funcione con Netscape 4.5
			if (document.forms[0].NAVACCION != null && document.forms[0].NAVACCION.value.charAt(0) == ' ')
			{
				document.forms[0].NAVACCION.value = '';
			}
            document.forms[0].submit();
        }
    }
    function onclickPestana(pestana,carpeta){
        return true;
    }

    //Valores por defecto para el navegador
    function asignaValoresNavegador(){
        if(document.forms[0]){
			with(document.forms[0]){
                if(NAVAGENT)            NAVAGENT.value         	    = navigator.userAgent;
                if(NAVSCREENHEIGHT)     NAVSCREENHEIGHT.value  	    = screen.height;
                if(NAVSCREENWIDTH)      NAVSCREENWIDTH.value   	    = screen.width;
                if(NAVNAVIGATORNAME)    NAVNAVIGATORNAME.value 	    = navigator.appName;
                if(NAVNAVIGATORVERSION) NAVNAVIGATORVERSION.value 	= parseInt(navigator.appVersion);
            }
        }
		eliminaRepetidosCarpetas();
	}

	function eliminaRepetidosCarpetas(){
		//Limpiar variables de navegacion de repetidos y carpetas
		if( document.forms[0].NAVREGISTRO		!=null)	document.forms[0].NAVREGISTRO.value = "";
		if( document.forms[0].NAVREPETIDO		!=null)	document.forms[0].NAVREPETIDO.value = "";
		if( document.forms[0].NAVFILA			!=null)	document.forms[0].NAVFILA.value = "";
		if( document.forms[0].NAVINICIAL		!=null)	document.forms[0].NAVINICIAL.value = "";
		if( document.forms[0].NAVCARPETAACTIVA  !=null)	document.forms[0].NAVCARPETAACTIVA.value = "";
		if( document.forms[0].NAVPESTANAACTIVA  !=null)	document.forms[0].NAVPESTANAACTIVA.value = "";	
	}



	function setAccionRep(accion,repetido,repInicio,valor,fila){
		with(document.forms[0]){
			if( accion=="DELETE" && !confirm("¿Desea eliminar este dato?") ) return; 
			NAVREPETIDO.value = repetido;
			NAVINICIAL.value  = repInicio;
			NAVACCION.value   = accion;
			if(fila  !=null) NAVFILA.value		= fila;
			if(valor !=null) NAVREGISTRO.value	= valor;
			document.forms[0].submit();
		}
	}


    function changeUp(imagen){
//alert("imagen UP = " + imagen);
		var nav_name = imagen.name;
		nav_name = nav_name.substring(0,5);

		var navObj = eval(nav_name+'d');
		imagen.src= navObj.src;
		}

		function changeDown(imagen,repetido,repInicio,valor,fila){
//alert("imagen = " + imagen);
		var nav_aux  = imagen.name;
//alert("nav_aux = " + nav_aux);
        nav_aux = nav_aux.substring(0,5);
		var nav_name = nav_aux;
//alert("nav_name = " + nav_name);
		if(imagen.type !='button'){
		var navObj = eval(nav_name+'u');
		imagen.src= navObj.src;
        }

//alert("document = 1");
/*
if ( document != null)
{
	alert("!= null");
}
else {
alert("== null");
}
*/
		with(document.forms[0]){
		NAVREPETIDO.value =repetido;
		NAVINICIAL.value =repInicio;
		var letraEvalua = nav_aux.charAt(nav_name.length-1);
		if(setAccion( letraEvalua ) ){
		if(fila !=null) NAVFILA.value = fila;
		if(valor !=null){
		NAVREGISTRO.value = valor;
        }
		if (letraEvalua!='c') document.forms[0].submit();
		}
		}
		}
		function setAccion(letra){
		var accion = '';
		if(letra=='f'){
		accion = 'FIRST';
        }else if(letra=='a'){
		accion = 'NEW';
		}else if(letra=='p'){
		accion = 'PREVIOUS';
		}else if(letra=='n'){
		accion = 'NEXT';
		}else if(letra=='l'){
		accion = 'LAST';
        }else if(letra=='b'){
		accion = 'FIND';
		}else if(letra=='e'){
		accion = 'EDIT';
		}else if(letra=='d'){
		if(confirm(selMessage(msgDelete))){
		accion = 'DELETE';
		}
		}
       	with(document.forms[0]){
		NAVACCION.value = accion;
		}
		if (accion != '')
		return true;
		else
		return false;
		}

        function mandaRep(accion,repetido,registro,fila,inicial){
		document.forms[0].NAVACCION.value  = accion;
		document.forms[0].NAVREPETIDO.value= repetido;
		document.forms[0].NAVREGISTRO.value= registro;
		document.forms[0].NAVFILA.value    = fila;
		document.forms[0].NAVINICIAL.value    = inicial;
		document.forms[0].submit();
		}



    //No permite enviar un formulario mas de una vez
    function SUE(){
        permitirMasUnEnvio = false;
    }





	//Funcion principal de validacion del formulario
	function valida() {
        msgError		= "";
		ObjetoErroneo 	= null;
		if(document.forms[0].NAVPAGINAVALIDADA !=null){
						document.forms[0].NAVPAGINAVALIDADA.value = "S";
		}

        if( !permitirMasUnEnvio && enviosForm >0 ){
            return false;
        }

		// Mira si se acaba de pulsar en enviar formulario
		if(enviado){
			//alert(selMessage(msgEspera));
			return false;
		}else{
			enviado = true;
			idEnviado = setTimeout("mantenEnviado()", 4000);
			//Primero mira si tiene que validar el formulario
			//En este caso se comprueba que los objetos de la pagina sean correctos
			if( validacionForm  ){
				//Camiamos el estado del switch
				validacionForm = false;
				// isFormValido() es una funcion que se va a redefinir en la pagina 
				// validaAux()    tambien se podraredefinir en la pagina
				if ( isFormValid() && validaAux() ){
					if(document.forms[0].NAVPAGINAVALIDADA !=null){
						document.forms[0].NAVPAGINAVALIDADA.value = "S";
					}
                    msgTemporal();
                    enviosForm++;
//wait();
					return true;
				}else{ //Salida por error del procedimiento de validación.
					//Mostramos el mensaje de error del objeto que produjo el fallo, si lo hubiese
					// de otro modo el mensaje se tendria que poner en el procedimiento invocado
					enviado = false;
					clearTimeout(idEnviado);
					if( ObjetoErroneo != null ){
						//shake(2);
						alert(msgError);
						if(ObjetoErroneo.type=="text") ObjetoErroneo.select();
						ObjetoErroneo.focus();
					}
					return false;
				}
			}else{
				//No hay que validar el formulario
                msgTemporal();
                enviosForm++;
//wait();
				return true;
				//return validaAux();
			}
		}//fin else pinchado 2 veces
	}

    function msgTemporal(){
        setTimeout("beforeSubmit()", 2000);
    }

    function beforeSubmit(){}


	//Devuelve el nombre del objeto quitandole la serie de validacion JavaScript
	function nombreObjeto(objObjeto){
		var nombre = objObjeto.name;
/* //No se parseara el nombre del objeto
		if (nombre.indexOf("_NC") == -1) {
			var i = nombre.indexOf("_");
//nombre = nombre.substring( i+1 , nombre.length);		
			while(  (i = nombre.indexOf("_") )>0 ){
				nombre = nombre.substring(0,i) + " " + nombre.substring(i+1,nombre.length);
			}
		}
*/
        return nombre;
	}



	//Esta funcion mostrara un mensaje de javaescript sobre la continuidad de existencia de una funcion 
	// o su desaparicion de la base de datos (es decir, de este fichero)
	function badFunction(funcion){
		alert( selMessage(msgBadFuncion) + " --> " + funcion );
		return false;
	}



	// Si en la pagina se quieren incluir validaciones extras se debe 
	// sobreescribir esta funcion
	function validaAux(){
		return true;
	}

   //*************************************************************************
   // Comprobar que la version del navegador es la pedida
   // Explorer superior a la v.4 o Navigator superior a la v.3
   if      (versionNavegador <4 && nombreNavegador == "Microsoft Internet Explorer" ){
   		alert(selMessage(msgBadNavigator)+ "(I.Explorer v.4)");
		window.close();
   }else if(versionNavegador <3 && nombreNavegador == "Netscape") {
     	alert(selMessage(msgBadNavigator)+ "(NetScape v.3)");
    	window.close();
   }  
	
	if (navigator.appName == "Microsoft Internet Explorer" ){
		IE = true;
	}else{
		NS = true;
	}	

//Activa la captura de la tecla Enter para hacer un submit del formulario 
 //(en principio aplicable a las paginas de busqueda)
 function enableEnterKey(){	
	if(NS){
		document.captureEvents(Event.KEYPRESS);
   	}  
	document.onkeypress    = enterKey;
 }
 function enterKey(e) {
	var code = 0;
	if(NS) code = e.which;
	if(IE) code = event.keyCode;
	if (code == 13){
		document.forms[0].submit();
	}
 }


/*
	//Ocultar el codigo al boton derecho
	function right(e) {
		if (navigator.appName == 'Netscape' && e.which == 3) {
			return false;
		 } else if (navigator.appName == 'Microsoft Internet Explorer' && event.button==2) {
			return false;
		 }
		return true;
	}

	document.onmousedown = right;
*/


	/*
		No admitir letras en un campo de tipo numerico(Solo para explorer)
	*/
	var i = 0
	function fNumber(objeto){
		if(IE){
			//if(i>0){
				//objeto.captureEvents(Event.KEYPRESS);
			//}  
			//objeto.onkeypress    = numberKey;
		}
	}

 	function numberKey(e) {
		var code = 0;
		if(!IE) {
			if(i>0) code = e.which;
		}else{
			if(i==0) code = event.keyCode;
		}
		if( (code!=44 && code !=46) ){
		 	if (code <48 || code >57) event.returnValue=0;
		}
 	}


	/*
		Funcion sobre la que se van a mandar los eventos de botones de formularios que llevan asociado el evento onclick
		esta funcion debera ser sobreescrita en la pagina para escribir las acciones pertinentes sobre ella
	*/
	function buttonClick(nombreBoton){

	}



	//*************************************************************************
	//Devolver si un formulario es valido comprobando la validez de sus objetos
	//Esta  funcion  se aplica en el evento onSubmit del form
	function isFormValid(){
		var retorno = true;
		/*
		var i = 0;
		while (retorno && i < document.forms[0].elements.length){
			var objeto = document.forms[0].elements[i];
			//Llamar a validacion de objeto
			retorno = verify( objeto );	
			i++;
		}
		*/
		return retorno;		
	}

		//*************************************************************************
	//Verificar si un objeto es valido llamando a las funciones asociadas en su nombre	
	function verify(objeto){
		var retorno = true;
		var i = objeto.name.indexOf("_");
		if (objeto.name.indexOf("WebEvent")>0) i=0;
		if (i>=2){
			var prefijo = objeto.name.substring(0,i);
			var j = 0 ;
			while ((j< prefijo.length) && retorno){
				var funcion = prefijo.substring(j,j+2);
				//Ejecutar la funcion pertinente
				objetoErroneo= objeto;
				var cadenafuncion = funcion + "(objeto);";
				//var cadenafuncion = "RE(objeto)";
				
				var mifuncion 	  = new Function(cadenafuncion);
				mifuncion(objeto);
				//fin ejecucion
				j+=2;
			}
		}
		return retorno;
	}


		/**
	*Abre una nueva ventana pasando la Url, el nombre de la ventana nueva y las propiedades de la ventana
	*/
	function abrirNewWin(url,nombre,props){
		if(nombre==null ) nombre = "''";
		if(props==null) props="'toolbar=yes,location=yes,directories=yes,status=yes,menubar=no,scrollbars=yes,resizable=yes'";
		window.open(url,nombre,props);
	}


	/**
	*Es la  funcion que pone nuestro objeto Checkbox a true o false
	*
	*/
	function checkClick(objeto,valsi,valno){
		if(valsi==null) valsi="1";
		if(valno==null) valno="0";
		var nombre = objeto.name;
/*		
		nombre+= "CHKBOX";
		var imagen = eval("document.forms[0]."+nombre);
*/
		var valor = objeto.value;
		if(valor == ""){
			valor = valno;
		}else{
			valor = (valor==valno)? valsi:valno;
		}
/*
		if(valor==valsi)
			imagen.src=imgcheckon.src;
		else
			imagen.src=imgcheckoff.src;
*/
/*
		ecke = nombre + "CHKBOX";
		objetoc = eval( "document.forms[0]."+ecke);
		objetoc.checked = !objetoc.checked;
*/
		objeto.value=valor;
	}


	/**
	*Abre un anueva ventana y llama al servlet que pondra la ayuda en la pagina
	*/
	function showHelp(){
		var direccion = document.forms[0].NAVPAGINAACTUAL.value;
		//direccion =document.location + "?NAVPAGINAACTUAL=" + direccion + "&^ABRIRAYUDA=SI";
		direccion =document.forms[0].action + "?NAVPAGINAACTUAL=" + direccion + "&^ABRIRAYUDA=SI";
		var win =   window.open( direccion , 'HELP', 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,width=750, height=620');
	}


	//*************************************************************************
	//Abre una ventana de ayuda para mostrar informacion sobre, formularios
	// y objetos
	function abreAyuda(texto){
  	    var win =   window.open( "", "helpPage", 
			"toolbar=no,location=no,directories=no,status=no,menubar=no," + 
			"scrollbars=no,resizable=no width=600, height=600 ");

	    win.document.writeln(
		"\n<HTML><HEAD><TITLE>"+selMessage(msgAyuda)+"</TITLE> <link rel='stylesheet' href='/maquetapvc/recursos/2098/hoja.css'></HEAD></BODY BGCOLOR = "+
		"WHITE onLoad='document.forms[0].elements[0].focus()'>"+
		"\n<br><FORM><CENTER><TABLE bgcolor=#EBE7E7 WIDTH=500 CELLSPACING=0 CELLPADDING=0 BORDER=0>"+
		"\n	<TR>"+
		"\n		<TD CLASS = 'A101' bgcolor=#7D94BD WIDTH = 5%>"+
		"\n			&nbsp;"+
		"\n		</TD>"+
		"\n		<TD CLASS ='A101' bgcolor=#7D94BD WIDTH = 35%>"+
		"\n			<FONT FACE = 'Arial' color='white' size=2><b>Ayuda<b></FONT>"+
		"\n		</TD>"+
		"\n		<TD BGCOLOR = 'WHITE'  WIDTH = 60%>"+
		"\n			&nbsp;"+
		"\n		</TD>"+
		"\n	</TR>"+
		"\n	<TR>"+
		"\n		<TD CLASS = 'A201' COLSPAN=3>"+
		"\n			&nbsp;"+
		"\n		</TD>"+
		"\n	</TR>"+
		"\n	<TR>"+
		"\n		<TD CLASS = 'A201' COLSPAN=3 align=left>"+
		"\n			&nbsp; <FONT FACE = 'Arial' color='black' size=2>"+texto+"</FONT>"+
		"\n		</TD>"+
		"\n	</TR>"+
		"\n	<TR>"+
		"\n		<TD CLASS = 'A201' COLSPAN=3>"+
		"\n			&nbsp;"+
		"\n		</TD>"+
		"\n	</TR>"+
		"\n	<TR>"+
		"\n		<TD CLASS = 'A201'  COLSPAN=3>"+
		"\n			<center><INPUT TYPE= BUTTON VALUE='"+selMessage(msgCerrar)+"' onClick='window.close()'></CENTER></FORM></center>"+
		"\n		</TD>"+
		"\n	</TR>"+
		"\n</TABLE>"+
		"\n<SCRIPT>" +
		"\n	document.forms[0].elements[0].focus;" +
		"\n	var id = setTimeout('cerrar()',30000);" +
		"\n	var idf = setTimeout('foco()',2000);" +
		"\n	function foco(){" +
		"\n		document.forms[0].elements[0].focus;" +
		"\n     idf = setTimeout('foco()',2000);" +
		"\n		clearTimeout(idf);" +
		"\n	}" +
		"\n	function cerrar(){" +
		"\n		window.close();" +
		"\n		clearTimeOut(id);" +
		"\n	}" +
		"\n</SCRIPT\> " +
		"\n</FORM></BODY></HTML>");	
		 win.document.close();
	}



	//Nueva ayuda pasando los class de formularios
	function abreAyudaClass(tt,tc,ct,cc,caux,texto){
		var win =   window.open( "", "helpPage", 
			"toolbar=no,location=no,directories=no,status=no,menubar=no," + 
			"resizable=no,scrollbars=yes, width=600, height=350 ");
	    win.document.writeln(
		"\n<HTML><HEAD><TITLE>"+selMessage(msgAyuda)+"</TITLE> <link rel='stylesheet' href='/maquetapvc/recursos/2098/hoja.css'></HEAD></BODY BGCOLOR = "+
		"WHITE onLoad='document.forms[0].elements[0].focus()'>"+
		"\n<br><FORM><CENTER><TABLE bgcolor=#EBE7E7 WIDTH=500 CELLSPACING=0 CELLPADDING=0 BORDER=0>"+
		"\n	<TR>"+
		"\n		<TD CLASS = '"+tt+"' bgcolor=#7D94BD WIDTH = 5%>"+
		"\n			&nbsp;"+
		"\n		</TD>"+
		"\n		<TD CLASS ='"+tc+"' bgcolor=#7D94BD WIDTH = 35%>"+
		"\n			<FONT FACE = 'Arial' color='white' size=2><b>"+selMessage(msgAyuda)+"<b></FONT>"+
		"\n		</TD>"+
		"\n		<TD BGCOLOR = 'WHITE'  WIDTH = 60%>"+
		"\n			&nbsp;");
		win.document.writeln(
		"\n		</TD>"+
		"\n	</TR>"+
		"\n	<TR>"+
		"\n		<TD CLASS = '"+ct+"' COLSPAN=3>"+
		"\n			&nbsp;"+
		"\n		</TD>"+
		"\n	</TR>"+
		"\n	<TR>"+
		"\n		<TD CLASS = '"+ct+"' COLSPAN=3 align=left>"+
		"\n			&nbsp; <FONT FACE = 'Arial' color='black' size=2>"+texto+"</FONT>"+
		"\n		</TD>"+
		"\n	</TR>"+
		"\n	<TR>"+
		"\n		<TD CLASS = '"+ct+"' COLSPAN=3>"+
		"\n			&nbsp;"+
		"\n		</TD>"+
		"\n	</TR>"+
		"\n	<TR>"+
		"\n		<TD CLASS = '"+ct+"'  COLSPAN=3>"+
		"\n			<center><INPUT TYPE= BUTTON VALUE='"+selMessage(msgCerrar)+"' onClick='window.close()'></CENTER></FORM></center>"+
		"\n		</TD>"+
		"\n	</TR>"+
		"\n</TABLE>"+
		"\n<SCRIPT>" +
		"\n	//document.forms[0].elements[0].focus;" +
		"\n	var id = setTimeout('cerrar()',30000);" +
		"\n	var idf = setTimeout('foco()',2000);" +
		"\n	function foco(){" +
		"\n		document.forms[0].elements[0].focus;" +
		"\n     idf = setTimeout('foco()',2000);" +
		"\n		clearTimeout(idf);" +
		"\n	}" +
		"\n	function cerrar(){" +
		"\n		window.close();" +
		"\n		clearTimeOut(id);" +
		"\n	}" +
		"\n</SCRIPT\> " +
		"\n</FORM></BODY></HTML>");	
		 win.document.close();
		 win.focus();
	}


	/*
	* Colocar el el alternate de un objeto la conversion Pst/euros
	*/
	function valorPtsEu(objetoMon,valor,moneda){
		var value      = valor.value;
		if( value =="") value=0;
		var valEs  = value +"";
		valEs = replaceSubStringAll( valEs , '.' , '' );
		valEs = replaceSubStringAll(valEs , ',' , '.')
		var titulo = truncaEu(valEs,moneda);
		titulo = formateaMoneda(titulo);
		if(moneda=="Pts"){
			titulo+= " Eur";
		}else{
			titulo+= " Pts";
		}
		
		
		return titulo;
	}

	function truncaEu(valor, moneda){
		if(moneda =='Pts'){
			valor = valor / EURO;
		}else{
			valor = valor * EURO;
		}

		valor = valor +"";
		if(moneda == 'Pts' ){
			var i = valor.indexOf("."); 
			if( i == -1){
				valor = valor +".00";
			}else{
				if( (valor % 1)>0 ){
					valor = valor +"00";
					valor = valor.substring(0 , i+3);
				}
			}
			valor=valor.replace('.',',');
		}else{
			valor = Math.round(valor);			
		}
		return valor;
	}

	function formateaMoneda(cadena){
		
		var resultado = "";
		cadena = cadena+"";
		if(cadena!=""){
			var decimales   = "";
			var enteros 	= "";		
			var i 		= cadena.indexOf(",");
			if( i == -1 ){
				enteros = cadena;
			}else{
				enteros   = cadena.substring(0,i);
				decimales = cadena.substring(i,cadena.length);
			}		
			
			var contador = 1;
			i=0;
			
			for(i=enteros.length-1;i>=0;i-- ){
				caracter = enteros.charAt(i);
				resultado = caracter + resultado;
				contador++;
				if(contador>3 && i !=0){
					contador=1;
					resultado = "."+resultado;
				}
			}
			resultado = resultado + decimales;
		}
		return resultado;
	}

	
	//Funciones para abrir calendario en otra pagina
	function abreCalendario(objetoFecha){
/*
		objFecha = objetoFecha;
        if (!validaFecha(objFecha)) 
			objFecha.value = "";
		wnd = window.open("/formularios/mtoweb/paginas/calend.html","","width=320,height=300");
		//wnd = window.open("/formularios/mtoweb/paginas/calend.html","","width=350,height=260");
	        //Si llamasemos a los metodos u objetos de otra ventana inmediatamente no tendría efecto
	       //por eso lanzo un timer de un segundo y se llama a la ventana
	    //timerID = setTimeout("linkCalendario()",1000);
*/
		fechaObj=objetoFecha;
		var win = null; 
		if (navigator.appName.indexOf("Microsoft")>=0 ){
			win= window.showModalDialog("/formularios/mtoweb/paginas/newCalendar.html",fechaObj,"dialogHeight: 300px; dialogWidth: 280px; dialogTop: 200px; dialogLeft: 200px; edge: Sunken; center: No; help: No; resizable: No; status: No;");
		}else{
			fechaObj=objetoFecha;
			win = window.open(
				"/formularios/mtoweb/paginas/newCalendar.html", "Calendario",
			"height=200,width=200,scrollbars=no,location=no,menubar=no,status=no,titlebar=no,toolbar=no,resizable=no,personalbar=no,top=200,left=200")
			
		}

	}

	//Esta funcion es requerida, es necesario dejar un tiempo de espera antes de llamar a objetos
	// o metodos de la ventana nueva.
	function linkCalendario(){
		wnd.document.forms[0].elements[0].focus();
		wnd.setObjects(this , objFecha);
		wnd.selLenguaje(lengua);
		//Liberamos el Thread timer
		clearTimeout(timerID);	
	}	


	// Terremoto
	function shake(n) {
		if (self.moveBy) {
			for (i = 5; i > 0; i--) {
				for (j = n; j > 0; j--) {
					self.moveBy(0,i);
					self.moveBy(i,0);
					self.moveBy(0,-i);
					self.moveBy(-i,0);
					}
				}
		}
	}



   //Elimina los espacios por ambos lados
   function trim(valor){
	   if(valor==null || valor=="" ) return "";
	  while(''+valor.charAt(valor.length-1)==' ')
		valor= valor.substring(0,valor.length-1);
	  while(''+valor.charAt(0)==' ')
	  valor=valor.substring(1,valor.length);
	  return valor
   }	
	  

   
    function validarFechaCadena(strContenido){

      var booValida = true;
      var dd = "";
      var mm = "";
      var yy = "";
      if (fEsCorrecta(strContenido)){
         dd = getDay(strContenido);       
         mm = getMes(strContenido);
         yy = getYear(strContenido);
        
         if (dd !="" && mm!="" & yy !=""){
                if (mm !=2){
                   if (dd > meses[mm-1]){
                      return false;
                   }else{
                      return true;
                   }
                }else{
                   return validaBisiesto(dd,yy)  
                }           

         }else{
            return false;
         }
      }else{
         return false;
      }

   }



   function validaFecha(objObjeto){
      var strContenido = null;  
        ajustaFecha(objObjeto);
	    strContenido = objObjeto.value;
      var booValida = true;
      var dd = "";
      var mm = "";
      var yy = "";
      if (fEsCorrecta(strContenido)){
         dd = getDay(strContenido);       
         mm = getMes(strContenido);
         yy = getYear(strContenido);
      

         if (dd !="" && mm!="" & yy !=""){
                if (mm !=2){
                   if (dd > meses[mm-1]){
                      return false;
                   }else{
                      return true;
                   }
                }else{
                   return validaBisiesto(dd,yy)  
                }           

         }else{
            return false;
         }
      }else{
         return false;
      }

   }

	
	function ajustaFecha(objeto){
		var valor = objeto.value;
		if(valor.length>0){
			valor = replaceSubStringAll( valor , '-' , '/' );
			var i = valor.lastIndexOf("/");
			if(i>0){
				var fin = valor.substring(i+1,valor.length);
				if(fin.length==2){
					if(fin>=20) 
						fin = "19"+fin
					else
						fin = "20"+fin
				}
				valor = valor.substring(0,i)+"/"+fin;
			}
			objeto.value = valor;
		}

	}


   function getDay(strCadena){
      var dia = strCadena.substring(0,strCadena.indexOf("/"));
      if (dia.length >2 || isNaN(dia) ||dia <1 || dia >31) dia= "";
      return dia;
   }
   function getMes(strCadena){
      var mes = strCadena.substring(strCadena.indexOf("/")+1,strCadena.lastIndexOf("/"));
      if (mes.length >2 || isNaN(mes) || mes>12 ||mes<1) mes= "";
      return mes;
   }
   function getYear(strCadena){
      var year = strCadena.substring(strCadena.lastIndexOf("/")+1,strCadena.length);
      if (year.length >4 || year.length <4 || isNaN(year) ||year >2100 || year < 100) year= "";
      return year;
   }
      
   function fEsCorrecta(strCadena){
      if (strCadena.length >0){
         var i = strCadena.indexOf("/");
         var j = strCadena.lastIndexOf("/");
         if ((i >0) && (j>0) && (i!=j))
            return true;
         else
            return false;
      }else
         return false;
   }

   
   function validaBisiesto(dd,yy){
      if ((yy % 4 )==0 && dd <=29){
         return true;
      }else if (dd<=28)
         return true;
      else
         return false;
      
   }     

   //Pone la fecha del sistema 	en el objeto anterior al dado
   function asignaFecha(objFecha){
      objFecha.value = fechaActual();
	  var i = 0; 
      while (i < document.forms[0].elements.length && document.forms[0].elements[i].name != objFecha.name){
		i++;
      }
      document.forms[0].elements[i-1].value = fechaActual();
   }	
 

   //Pone la fecha del sistema en el objeto anterior al dado en la ocurrencia dada
   function asignaFecha(objFecha, intPosicion){
      var strNombre = objFecha.name;
      var intPos = 0;
      var i = 0;
      for (i = 0 ; i < document.forms[0].elements.length; i++){
		var strObjeto =  document.forms[0].elements[i].name;
		if (strObjeto == strNombre){
			intPos++;
			if (intPos == intPosicion){
				break;
			}
		}
      }	      
      document.forms[0].elements[i-1].value = fechaActual();
   }	

   
   // Devuelve la fecha del sistema
   function fechaActual(){
      var ffecha    = new Date();
      var strValor = "";
      var mes = ffecha.getMonth()+1;
      strValor += ffecha.getDate()  <10 ?  "0" + ffecha.getDate() : ffecha.getDate();
      strValor += mes <10 ? "/0" + mes : "/" + mes;
      strValor += "/" + ffecha.getFullYear();
      return strValor;
   }


   // Devuelve la fecha del sistema sin incrementar sus constantes (mes = mes +1)
   function fechaSys(){
      var ffecha    = new Date();
      var strValor = "";
      var mes = ffecha.getMonth();
      strValor += ffecha.getDate()  <10 ?  "0" + ffecha.getDate() : ffecha.getDate();
      strValor += mes <10 ? "/0" + mes : "/" + mes;
      strValor += "/" + ffecha.getFullYear();
      return strValor;
   }	


	//Imprime la pantalla actual
   function imprimirPagina() {
      if (window.print)
         window.print();
      else
         alert( selMessage(msgPrint) );
   }

	function devuelveCaption(obj) {
	   objetos = sVectorObj.toString();
	   objetos = objetos.substring(0,objetos.indexOf(nombreObjeto(obj)));
	   cont = 0;
	   pos = objetos.indexOf(",");
	   while ( pos != -1 ) {
		  cont++;
		  pos = objetos.indexOf(",",pos+1);
	   }
	   return sVectorCapt[cont];
   }

   	function isList(objeto){
		// Ver si el objeto es una lista multiple o simple
		var tipo = objeto.type;
		if (tipo == "select-one" || tipo == "select-multiple" ){
			return true;
		}else{
			return false;
		}
	}
	
	function reqLista(objeto){
		var valor = "";	
		if( nombreNavegador == "Netscape"){
			valor = objeto.options[objeto.selectedIndex].value;
			if(valor==null){
				 valor = "";
			}
		}else{
			valor = objeto.value;
		}
		if( valor ==null || valor=="" || valor =="-1")
			return false
		else{
			return true;
		}
	}

    var numFinal = false;
	var parteEntera  = "";
	var parteDecimal = "";
	
	function isNumFormat(objeto){
		var numero = objeto.value;
		if (numero =="") return true;
        else if( !esNumero(numero))
            return false;
		parteEntera  = "";
		parteDecimal = "";
		numFinal = false;
		if( numComas( numero ) ){
			if(numFinal){
				parteEntera = "0";
				return true;
			}else{
				var retorno = procesaParteEntera();
                //if(!retorno) alert("Revise parte entera");
                return retorno;
			}
		}else{
			//alert("Numero incorrecto revise decimales");
			return false;
		}

	}
	
    function esNumero(numero){
        var retorno = true;
        for(var i=0;i<numero.length;i++){
            var caracter = numero.charAt(i);
            if( caracter != ',' &&  caracter != '.'  &&  isNaN(caracter)  ){
                retorno = false;
            }
        }
        return retorno;
    }


	function numComas(numero){
		var retorno = true;
		var poscoma = -1;
		//Vemos que solo existe una coma 
		var ocurrencias = 0;
		var i = numero.indexOf(",");
		//Vemos si el numero empieza por ',' y lo marcamos para luego rellenarlo Ejemplo: ',876'
		if(i <= 0){
			if(i==0){
				numFinal = true;
				parteDecimal = numero;
			}
			parteEntera  = numero;
			
		}else if(i>0){
			poscoma = i;
			parteDecimal = numero.substring(poscoma+1,numero.length)
			parteEntera  = numero.substring(0,poscoma); 
		}
		while( i >=0 ){
			ocurrencias ++;
			i=numero.indexOf(",",i+1);
		}
		if(ocurrencias >1){ 
			retorno = false;
		}else{
			//Verificar que la coma esta delante del punto si hubiese
			if( ocurrencias == 1 ){
				if( numero.indexOf(".") >= 0 ){
					if( numero.lastIndexOf(".") > poscoma ){
						retorno = false;
					}
				}
			}
		}

		return retorno;
	}

	function procesaParteEntera(){
		//Si no tiene punto de millar se da como buena 
		if( parteEntera.indexOf(".") <0 ){
			return true;
		}else{
			//Si tiene punto de millar le damnos la vuelta y vemos que estan cada tres posiciones 
			//o seria una cadena erronea
			var numero = reverseString(parteEntera);
			var retorno = true;
			var i = 0;
			//Si la longitud de la parte entera es menor de 5, no tiene sentido que tenga un punto, con lo cual
			//saldremos por error
			if (numero.length<5)
			{
				retorno=false;
			}
			else
			{
				while(retorno && i<numero.length){
					caracter = numero.charAt(i);
					if( ( (i+1)%4 ) == 0 && caracter != '.' ){
						retorno = false;
					}
				i++;
				}
			}
			return retorno;
		}
	}

	function reverseString(cadena){
		var retorno ="";
		for(var i = cadena.length-1; i>=0 ; i--){
			retorno += cadena.charAt(i);
		}
		return retorno;
	}




   
   
   function replaceSubStringAll(cadena,caractersus,caracternue){
		var pos = cadena.indexOf(caractersus);
		while(pos>=0){
			cadena = cadena.substring(0,pos)+ caracternue + cadena.substring(pos + caractersus.length ,cadena.length);
			pos = cadena.indexOf(caractersus, pos + caracternue.length );
		}
		return cadena;

   }
   
   	function limpiaCadena(sCad){
	  var sCadNueva = "";
      if(sCad!=null){
          var c;
          for (i = 0; i < sCad.length; i++){
             c = sCad.charAt(i);  
             if (( (c >= 'A') && (c <= 'Z')) || ( (c >= 'a') && (c <= 'z')) || ( (c >= '0') && (c <= '9') ))
                sCadNueva += c.toUpperCase();
          }
      }
      return sCadNueva;					
	}
	
	function vTipoNIF(sNIF)	{
		if (!vNIFValido(sNIF)){
			return("0");
		} else {
			return (sTipoDoc);
		}
	}


	function rellena(sNIF, intLen){
		while (sNIF.length < intLen){
			sNIF ="0" + sNIF;		
		}
		return sNIF;
	}


	function vNIFValido(sNIF){
		var nLen;
		var sLetras = "TRWAGMYFPDXBNJZSQVHLCKET";
		var sLetrasCIF = "ABCDEFGHSPQN";
		var sNumeros = "0123456789";

	    var cPrimero;
	    var cUltimo;
	    var iUltimo;

	    var sNumero;
      	var iPares=0;
      	var iImpares=0;
      	var iSumaControl;
      	var iCifra;
		var cLetraCalculada;

		var bNIFCorrecto = false;

     	sNIF = limpiaCadena(sNIF);
     	nLen = sNIF.length;
		cPrimero = sNIF.charAt(0);
		cUltimo = sNIF.charAt(nLen-1);

			if (("KLMXY".indexOf(cPrimero) != -1 ) || (sNumeros.indexOf(cPrimero) != -1))
			{
		        // Es un NIF
				nLen = sNIF.length;
				sTipoDoc= "N";			 
				sTipoNIF = "F";
				         
				if (sNumeros.indexOf(cUltimo) != -1){
					// Acaba por número y no por letra
	               bNIFCorrecto = false;
				} else	{
					if ("KLMXY".indexOf(cPrimero) != -1 ){
				   		sNumero = sNIF.substring(1, nLen-1);
						sTipoDoc = "E";
					} else {
				   		sNumero = sNIF.substring(0, nLen-1);
					}

		   			// Aquí comprobamos el dígito...		   			
					cLetraCalculada = sLetras.charAt(sNumero % 23);
			
					if (cUltimo != cLetraCalculada){
						bNIFCorrecto = false;
					} else{
						bNIFCorrecto = true;
					}
				}
			} else {
	         	// Es un CIF
				sTipoDoc = "C";
				sTipoNIF = "J";

				sNumero = sNIF.substring(1, nLen-1);
	         	if (sLetrasCIF.indexOf(cPrimero) != -1) {
	         		for (i=0; i<sNumero.length; i++) {
	         			iCifra = sNumero.substring(i, i+1);		

	         			if ((i+1) % 2 == 0){	         			
	         				iPares += iCifra * 1;
	         			} else {
	         				// Multiplicamos por 2 y sumamos las 2 cifras
	         				if (iCifra >= 5){
	         					iImpares += 1 + ((iCifra * 2) % 10);
							}else{
	         					iImpares += (iCifra * 2);
							}
	         			}
	         		}
	         		iSumaControl = 10 - ((iPares + iImpares) % 10);


					if (sNumeros.indexOf(cUltimo) != -1){
						// El último dígito es numérico
						cLetraCalculada = iSumaControl % 10;
					} else {
						// El último dígito NO es numérico
						
						cLetraCalculada = String.fromCharCode(64 + iSumaControl);
					}

					if (cUltimo != cLetraCalculada){
						bNIFCorrecto = false;
					} else {
   						bNIFCorrecto = true;
					}

	         	} else {
					bNIFCorrecto = false;
				}      		
	      	}	

		return (bNIFCorrecto);

	}


    function isTarjeta(nombre) {
		var st = "";
		st += eval("document.forms[0]."+nombre+ "_TAPD").value;
		st += eval("document.forms[0]."+nombre+ "_TASD").value;
		st += eval("document.forms[0]."+nombre+ "_TATD").value;
		st += eval("document.forms[0]."+nombre+ "_TACD").value;
		if (st.length > 19)	return false;
		var sum = 0; 
		var mul = 1; 
		l = st.length;
		for (i = 0; i < l; i++) {
			digit = st.substring(l-i-1,l-i);
			tproduct = parseInt(digit ,10)*mul;
			if (tproduct >= 10){
				sum += (tproduct % 10) + 1;
			}else{
				sum += tproduct;
			}
			if (mul == 1){
				mul++;
			}else{
				mul--;
			}
		}
		if ( (sum % 10) == 0){
			return true;
		}else{
			return false;
		}
		return false;
	}


	function validarRango ( Campo , Minimo , Maximo ) {
		var valor = eval ( "document.forms[0]." + Campo + ".value" ); 
		if ( ( valor < Minimo) || ( valor > Maximo ) ) {
			return false;
		}
		else {
			return true;
		}
	}

	function HrefSubmit(objeto,row){
		with (document.forms[0]){
			objeto.value = row;
			submit();
		}
	}


	function saveCookie(name,value,days,secs) {
		if(days==null) days = 1;
		if (days>=2) {
			var date = new Date();
			date.setTime(date.getTime()+(days*24*60*60*1000))
			var expires = "; expires="+date.toGMTString()
		}else{
			expires = ""
		}
		document.cookie = name+"="+value+expires+"; path=/"
	}

	function saveCookie(name,value,expires) {
		document.cookie = name+"="+value+expires+"; path=/"
	}


	



	function readCookie(name) {
		var nameEQ = name + "="
		var ca = document.cookie.split(';')
		for(var i=0;i<ca.length;i++) {
			var c = ca[i];
			while (c.charAt(0)==' ') c = c.substring(1,c.length)
			if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length)
		}
		return null
	}

	function deleteCookie(name) {
		saveCookie(name,"",-1)
	}


	//Buscar una palabra en la pagina
	
	

	function selFila(objeto){
		if(objeto.className != "A100")	objeto.className="A100";
	}

	function unselFila(objeto){
		var nom = objeto.name;
		objeto.className=nom;
	}




	function formatEnteros(texto){
		numero = texto.value
		numero = replaceSubStringAll(numero, '.','');
		var pos = numero.indexOf(",");
		var enteros	  = numero;
		var decimales = "";	 
		if(pos>=0){
			enteros		= numero.substring( 0 , pos );
			decimales	= numero.substring( pos , numero.length );	 
		}
		var cadena = "";
		var j = 0;
		for(var i = enteros.length; i>=0; i--  ){
			var caracter = enteros.charAt( i );
			if( ( j %3 )==0 && j>0 && i>0){
				caracter = "."+caracter ;
			}
			cadena =caracter + cadena ;
			j++;
		}
		texto.value =  cadena + decimales
	}


