<!--

//Indica si los nifs se rellenan con 0 a la izquierda

//si se pone a true por codigo en la pagina se rellenan los NIF 

var rellenarNIF=false;



//***********************************************************************************************************

//FUNCIONES DEFINIDAS POR EL USUARIO A APLICAR SOBRE OBJETOS



//Validar si el objeto esta vacio de contenido.

	//## Valor Requerido

	function RE(objeto){



		if(isList(objeto)){

			if( !reqLista(objeto)){

				ObjetoErroneo = objeto;

				msgError	= selMessage(msgObligatorio)+ " (" + devuelveCaption(objeto) + ")";	

				return false;

			}else{

				return true;

			}



		}else{

			objeto.value = trim(objeto.value);

			var valor = objeto.value;

			if (valor=="") {

				ObjetoErroneo = objeto;

				msgError	= selMessage(msgObligatorio)+ " (" + devuelveCaption(objeto) + ")";	

				return false;

			}else{

				return true;

			}



		}

	}







	//Validar si el objeto tiene contenido numerico

	//## Es Numerico

	function IN(objeto){

		if( objeto.type=="text"){



			if(objeto.value != "" && !isNumFormat(objeto) ){

				ObjetoErroneo = objeto;

				msgError	= selMessage(msgNumerico)+ " (" + devuelveCaption(objeto) + ")";	

				return false;

			}else{

				return true;

			}

		}else{

			return true;

		}

	}







	//## Pasar a mayusculas

	function MA(objeto){

		if( objeto!=null && objeto.value != "" ){ 

			objeto.value = objeto.value.toUpperCase();

		}

		return true;

	}





	//*************************************************************************

	//Funciones de validacion de Fecha y Hora

	//## Es de tipo Fecha correcta

	function IF(objeto){



		if( objeto.value !='' &&  !validaFecha(objeto) ){

			ObjetoErroneo = objeto;

			msgError	= selMessage(msgFecha)+ " (" + devuelveCaption(objeto) + ")";

			return false;

		}else{

			return true;

		}

	}





   //## FS Asignar Fecha-Sistema al dalir

   function FS(objFecha){

      objFecha.value = fechaActual();

	  return true;

   }	





	

	/* ******

	*	Función.... vTipoNIF(NIF): devuelve el tipo de NIF. "N", "C" para indicar NIF o CIF

	*	Función.... vNIFValido(NIF): devuelve "true" o "false" para la validación de un NIF

	*	Función.... limpiaCadena(cadena): pasa a mayusculas el NIF

	*	Función.... rellena(NIF, Longitud): los NIF siempre van con un pad de ceros por la izquierda hasta completar los nueve dígitos

	*/





	//## NI VALIDAR NIF/CIF

	function NI(objeto){

		var retorno;



		if (objeto.value == "")	{

			retorno = true;

		} else {

			retorno = vNIFValido(objeto.value);

            //Rellenar el NIF con 0 por la izquierda

            if(rellenarNIF &&  sTipo=='N'){    

                objeto.value=rellena( objeto.value , 9);

            }

		}

		

		if(!retorno){

			ObjetoErroneo = objeto;

			msgError = selMessage(msgNIF)+ " (" + devuelveCaption(objeto) + ")";

		}

		return retorno;

	}



	//## NZ VALIDAR NIF/CIF eliminando ceros por la izq.

    function NZ(objeto){

        var valor = objeto.value;

        if(valor!=""){

            while(valor.charAt(0)=='0'){

                valor = valor.substring(1,valor.length)

            }

            objeto.value=valor;

        }

        return NI(objeto);

    }







    //## VT VALIDAR NUMERO TARJETA

	function VT( objeto ){

        var nombre = objeto.name;

        nombre = nombre.substring(0, nombre.indexOf("_"));

        if( !isTarjeta(nombre)){

            ObjetoErroneo = objeto;

            msgError = selMessage(msgTARJETA)+ " (" + devuelveCaption(objeto) + ")";

            return false;

        }else

            return true;

    }





	//## CP VALIDAR CODIGO POSTAL

	function CP( objeto ){

		var cp = objeto.value; 

		if (cp.length >0 &&  cp.length != 5 ) {

			msgError = selMessage(msgCPCcifra)+ " (" + devuelveCaption(objeto) + ")";

			ObjetoErroneo = objeto;

			return false;

		}

		var Prov = parseInt( cp.substring(0,2) , 10);

		if (( Prov == 0) ||( Prov > 52 )){

			msgError = selMessage(msgCPErr)+ " (" + devuelveCaption(objeto) + ")";

			ObjetoErroneo = objeto;

			return false;

		}

		return true;

	}



/*

	//## VC VALIDAR CUENTA

	function VC(obj){

		var iDigito;

		var iDigito1;

		var iDigito2;

		var bCuentaCorrecta;

		var op0;

		var op1;

		var op2;

		var op3;

		var op4;

		var op5;

		var op6;

		var op7;

		var op8;

		var op9;



		var sNombre = obj.name;

		var iGuion = sNombre.lastIndexOf("_");

		sNombre = sNombre.substring(0,iGuion);

		var sObjeto = new Object();

		//AQUI COGE EL OBJETO ENTIDAD

		sObjeto = eval("document.forms[0]."+ sNombre +"_NCEN");

		sEnt = "" + sObjeto.value;

		var sEnt1 = sEnt.charAt(0);

		var sEnt2 = sEnt.charAt(1);

		var sEnt3 = sEnt.charAt(2);

		var sEnt4 = sEnt.charAt(3);

		//AQUI COGE EL OBJETO SUCURSAL

		sObjeto = eval("document.forms[0]."+ sNombre +"_NCSU");

		sSucursal = "" + sObjeto.value;



		var sSucursal1 = sSucursal.charAt(0);

		var sSucursal2 = sSucursal.charAt(1);

		var sSucursal3 = sSucursal.charAt(2);

		var sSucursal4 = sSucursal.charAt(3);

		op1 = sEnt1 * 4;

		op2 = sEnt2 * 8;

		op3 = sEnt3 * 5;

		op4 = sEnt4 * 10;

		op5 = sSucursal1 * 9;

		op6 = sSucursal2 * 7;

		op7 = sSucursal3 * 3;

		op8 = sSucursal4 * 6;

		var iSuma1 = op1 + op2 + op3 + op4 + op5 + op6 + op7 + op8;

		var iResto1 = iSuma1 % 11;

		if ((11 - iResto1) > 9){

			iDigito1 = 11 - (11 - iResto1);

		}else{

			iDigito1 = 11 - iResto1;

		}



		//AQUI COGE EL OBJETO CUENTA

		sObjeto = eval("document.forms[0]."+ sNombre +"_NCCU");

		iCuenta = sObjeto.value;

		var iSuma = 0;

		var iCuenta1 = iCuenta.charAt(0);

		var iCuenta2 = iCuenta.charAt(1);

		var iCuenta3 = iCuenta.charAt(2);

		var iCuenta4 = iCuenta.charAt(3);

		var iCuenta5 = iCuenta.charAt(4);

		var iCuenta6 = iCuenta.charAt(5);

		var iCuenta7 = iCuenta.charAt(6);

		var iCuenta8 = iCuenta.charAt(7);

		var iCuenta9 = iCuenta.charAt(8);

		var iCuenta0 = iCuenta.charAt(9);

		opc1 = iCuenta1 * 1;

		opc2 = iCuenta2 * 2;

		opc3 = iCuenta3 * 4;

		opc4 = iCuenta4 * 8;

		opc5 = iCuenta5 * 5;

		opc6 = iCuenta6 * 10;

		opc7 = iCuenta7 * 9;

		opc8 = iCuenta8 * 7;

		opc9 = iCuenta9 * 3;

		opc0 = iCuenta0 * 6;

		var iSuma2 = opc1 + opc2 + opc3 + opc4 + opc5 + opc6 + opc7 + opc8 + opc9 + opc0;



		var iResto2 = iSuma2 % 11;

		if ((11 - iResto2) > 9){

			iDigito2 = 11 - (11 - iResto2);

		}else{

			iDigito2 = 11 - iResto2;

		}

		var sDigitoCorrecto = "" + iDigito1 + iDigito2;



		//AQUI COGE EL OBJETO DIGITO DE CONTROL

		sObjeto = eval("document.forms[0]."+ sNombre +"_NCDC");

		iDigito = "" + sObjeto.value;

		if (sDigitoCorrecto == iDigito) {

			bCuentaCorrecta = true;

		}else{

			bCuentaCorrecta = false;

			ObjetoErroneo = obj;

			msgError = selMessage(msgCUENTA)+ " (" + devuelveCaption(sObjeto) + ")";

		}

		



		return bCuentaCorrecta;

	}



*/





	//## VC VALIDAR CUENTA

	function VC(obj){

		var iDigito;

		var iDigito1;

		var iDigito2;

		var bCuentaCorrecta;

		var op0;

		var op1;

		var op2;

		var op3;

		var op4;

		var op5;

		var op6;

		var op7;

		var op8;

		var op9;



		var sNombre = obj.name;

		var iGuion = sNombre.lastIndexOf("_");

		sNombre = sNombre.substring(0,iGuion);



		// obtengo los valores de cada objeto de la cuenta

		var sObjEnt = eval("document.forms[0]."+ sNombre +"_NCEN");

		var sObjSuc = eval("document.forms[0]."+ sNombre +"_NCSU");

		var sObjDc = eval("document.forms[0]."+ sNombre +"_NCDC");

		var sObjCu= eval("document.forms[0]."+ sNombre +"_NCCU");



		sEnt = "0000" + sObjEnt.value;

		sSucursal = "0000" + sObjSuc.value;

		iCuenta = "0000000000" + sObjCu.value;

		iDigito = "00" + sObjDc.value;



		sEnt = sEnt.substring(sEnt.length-4);

		sSucursal = sSucursal.substring(sSucursal.length-4);

		iCuenta = iCuenta.substring(iCuenta.length-10);

		iDigito = iDigito.substring(iDigito.length-2);



		sObjEnt.value = sEnt;

		sObjSuc.value = sSucursal;

		sObjCu.value = iCuenta;

		sObjDc.value = iDigito;



		//if (sEnt.value != "0000" && sSucursal != "0000" && iDigito != "00" && iCuenta != "0000000000"){

		//if (sEnt != "0000" || sSucursal != "0000" || iDigito != "00" || iCuenta != "0000000000"){

		if ((sEnt != "0000" || sSucursal != "0000" || iDigito != "00") && iCuenta != "0000000000"){

			//var sObjeto = new Object();

			//AQUI COGE EL OBJETO ENTIDAD

			//sObjeto = eval("document.forms[0]."+ sNombre +"_NCEN");

			//sEnt = "" + sObjeto.value;

			var sEnt1 = sEnt.charAt(0);

			var sEnt2 = sEnt.charAt(1);

			var sEnt3 = sEnt.charAt(2);

			var sEnt4 = sEnt.charAt(3);

			//AQUI COGE EL OBJETO SUCURSAL

			//sObjeto = eval("document.forms[0]."+ sNombre +"_NCSU");

			//sSucursal = "" + sObjeto.value;



			var sSucursal1 = sSucursal.charAt(0);

			var sSucursal2 = sSucursal.charAt(1);

			var sSucursal3 = sSucursal.charAt(2);

			var sSucursal4 = sSucursal.charAt(3);

			op1 = sEnt1 * 4;

			op2 = sEnt2 * 8;

			op3 = sEnt3 * 5;

			op4 = sEnt4 * 10;

			op5 = sSucursal1 * 9;

			op6 = sSucursal2 * 7;

			op7 = sSucursal3 * 3;

			op8 = sSucursal4 * 6;

			var iSuma1 = op1 + op2 + op3 + op4 + op5 + op6 + op7 + op8;

			var iResto1 = iSuma1 % 11;

/*			if ((11 - iResto1) < 10){

				iDigito1 = 11 - iResto1;

			} else if ((11 - iResto1)==10){

				iDigito1 = 0;

			} else {

				iDigito1 = 1;

			}

*/			if ((11 - iResto1) > 9){

				iDigito1 = 11 - (11 - iResto1);

			}else{

				iDigito1 = 11 - iResto1;

			}



			//AQUI COGE EL OBJETO CUENTA

			//sObjeto = eval("document.forms[0]."+ sNombre +"_NCCU");

			//iCuenta = sObjeto.value;

			var iSuma = 0;

			var iCuenta1 = iCuenta.charAt(0);

			var iCuenta2 = iCuenta.charAt(1);

			var iCuenta3 = iCuenta.charAt(2);

			var iCuenta4 = iCuenta.charAt(3);

			var iCuenta5 = iCuenta.charAt(4);

			var iCuenta6 = iCuenta.charAt(5);

			var iCuenta7 = iCuenta.charAt(6);

			var iCuenta8 = iCuenta.charAt(7);

			var iCuenta9 = iCuenta.charAt(8);

			var iCuenta0 = iCuenta.charAt(9);

			opc1 = iCuenta1 * 1;

			opc2 = iCuenta2 * 2;

			opc3 = iCuenta3 * 4;

			opc4 = iCuenta4 * 8;

			opc5 = iCuenta5 * 5;

			opc6 = iCuenta6 * 10;

			opc7 = iCuenta7 * 9;

			opc8 = iCuenta8 * 7;

			opc9 = iCuenta9 * 3;

			opc0 = iCuenta0 * 6;

			var iSuma2 = opc1 + opc2 + opc3 + opc4 + opc5 + opc6 + opc7 + opc8 + opc9 + opc0;



			var iResto2 = iSuma2 % 11;



			if ((11 - iResto2) > 9){

				iDigito2 = 11 - (11 - iResto2);

			}else{

				iDigito2 = 11 - iResto2;

			}

			

/*			if ((11 - iResto2)<10){

				iDigito2 = 11 - iResto2;

			} else if ((11 - iResto2)==10){

				iDigito2 = 1;

			} else {

				iDigito2 = 0;

			}

*/

			var sDigitoCorrecto = "" + iDigito1 + iDigito2;



			//AQUI COGE EL OBJETO DIGITO DE CONTROL

			//sObjeto = eval("document.forms[0]."+ sNombre +"_NCDC");

			//iDigito = "" + sObjeto.value;

			if (sDigitoCorrecto == iDigito) {

				bCuentaCorrecta = true;

			}else{

				bCuentaCorrecta = false;

				ObjetoErroneo = obj;

				msgError = selMessage(msgCUENTA)+ " (" + devuelveCaption(obj) + ")";

			}

		} else {

			bCuentaCorrecta = false;

			ObjetoErroneo = obj;

			msgError = selMessage(msgCUENTA)+ " (" + devuelveCaption(obj) + ")";

		}



		return bCuentaCorrecta;

	}







	//Valida que la longitud de la parte entera de 

	//los objetos moneda, deje colocar la parte decimal, la ajusta y redondea 

	//si es necesario

	function IM(objeto){



		if(nombreNavegador=="Netscape" && versionNavegador <=4){

			return true;

		}

		var nombreClase = objeto.className;

		var posiciones  = objeto.maxLength

		if(posiciones==null || posiciones>1000 ) posiciones=12;

		var valor = objeto.value;

		//Comprobar que el valor no esta vacio

		if(valor!="" ) {

			var contenido = objeto.value;

			var permitido = (posiciones-3);

			contenido = contenido.replace('.','');

			var posDecimal = contenido.lastIndexOf(",");

			var enteros   = contenido.length;

			var decimales = 0;

			//Posicion de la coma decimal

			if(posDecimal!=-1){

				enteros   = (contenido.substring(0,posDecimal)).length;

				decimales = (contenido.substring(posDecimal,contenido.length)).length;

			}



			//Se comprueba que el numero de caracteres enteros no exceda el limite

			if( enteros > permitido ){

				ObjetoErroneo = objeto;

				msgError = selMessage(msgMONEDA)+ " (" + devuelveCaption(objeto) + ")";

				return false;

			}else{

				//Tambien hay que ver que se pongan los decimales en la caja de texto, puede que no hayan, 

				// o que no se rellenan correctamente

				// Tambien si se exceden en la cantidad de decimales hay que redondear la cifra

				if(decimales==0){

					contenido = contenido + ",00";

				}else if(decimales==1){

					contenido = contenido + "00";

				}else if(decimales==2){

					contenido = contenido + "0";

				}

				if(decimales>2){

					var sumar = false;

					//Se comprueba el redondeo

					var last = contenido.substring(posDecimal +3 , posDecimal + 4 ); 

					var red  = contenido.substring(posDecimal +2 , posDecimal + 3 ); 

					if(last>=5){

						sumar = true;

						red = (red *1)+1;

					}

					if(!sumar){

						objeto.value = contenido.substring(0 , posDecimal +3 );

					}else{

						objeto.value = contenido.substring(0 , posDecimal +2 )+red;

					}

				}else{

					objeto.value = contenido;

				}

			}

					

			

		}

		formatEnteros(objeto)



		return true;

	}





	function evalFilaR( object){

		

		if( object != null){

			var seleccionados = document.getElementById('REP_SELECT');

			if( seleccionados != null){

				alert( 'Seleccionados = ' +seleccionados);

				alert( 'Check='+object.checked);

				if( object.checked ){

					if( seleccionados == ''){

						seleccionados = ''+ object.value;

					}else{

						seleccinoados = '~'+object.value;

					}

					alert( 'Despues ='+ seleccionados);

				}else{

					alert('No='+seleccionados);

					var arr = seleccionados.splic('~');

					alert( "Array="+ arr);

					for( var i =0; i< arr.length; i++){

						if( arr[i] == object.value){

							alert( 'Antes='+ seleccionados);

							seleccionados = seleccionados.replace('~'+object.value,'');

							alert( 'Despues='+ seleccionados);

						}

					

					}

					

				}

				alert('Fin='+seleccionados);

				document.getElementById('REP_SELECT').value= seleccionados;

			}

			

		}

		

		

	}



//fin del fichero de funciones JS

//-->


