function MM_showHideLayers() { //v6.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
    obj.visibility=v; }
}

// quitar espacios en blanco 
function Trim(cadena)
{
	var ini, fin, longitud = cadena.length-1;
	for (ini=0; cadena.charAt(ini) == " "; ini++);
	for (fin=longitud; cadena.charAt(fin) == " "; fin--);
	return cadena.substr(ini,fin-ini+1); 
}

function trim(cadena)
{
	return Trim(cadena);
}

// Validar caracteres extraños
function Validar_caracteres(campo)
{
	if (campo.value != "") 
	{
		if  (campo.value.match(/[^A-Za-z0-9_ .ñÑá-úÁ-Úä-üÄ-Ü,.:;%@€ªº()\$\/-]/) != null)
		{  
    		return false;
		}
	}
	return true;
}

function Validar_caracteres_Busqueda(campo)
{
	if (campo.value != "") 
	{
		if  (campo.value.match(/[^A-Za-z0-9_ .ñÑá-úÁ-Úä-üÄ-Ü,.:;ªº@€()\$\/-]/) != null)
		{  
    		return false;
		}
	}
	return true;
}

function Validar_caracteres_TextArea(campo)
{
	if (campo.value != "")
	{
		var cad_esp = "";
		for (i=1; i <= campo.value.length; i+=1 )
		{
				cad_esp +=  " ";
		}
		if (cad_esp == campo.value) {
			return false;
		}
		else{
			if (campo.value.match(/[^A-Za-z0-9_ .ñÑá-úÁ-Úä-üÄ-Ü,.:;%@€ªº()\$(\n\r\/-]/) != null) {  
				return false;
			}
		}
		
	}
	return true;
}


function Validar_caracteres_Numerico(campo)
{
	if (campo.value != "")
	{
		if (campo.value.match(/[^0-9]/) != null) {  
    		return false;
		}
	}
	return true;
}

function Cadena_espacios (Campo){
	//Devuelve true si el valor del campo es una cadena de espacios
	var cad_esp = "";
	for (i=1; i <= Campo.value.length; i+=1 )
	{
			cad_esp +=  " ";
	}
	if (cad_esp == Campo.value) {
		return true;
	}
	else {
		return false;
	}
}


// Validar caracteres extraños para usuario y clave. Solo permitimos letras y números, 
// la ñ no está permitida
function Validar_caractUsuPas(campo)
{
	if (campo.value != "")
	{
		if (campo.value.match(/[^A-Za-z0-9]/) != null) {  
    		return false;
		}
	}
	return true;
}



function Ejecutar_Op_Path( path_pagina ){
	//alert (path_pagina);
	document.theform.Acceso_Valido.value = 1
	document.theform.action	= path_pagina 
	//enviamos el formulario
	//window.open("../funciones/acceso_valido.asp","est","width=1,height=1,scrollbars=no,resizable=no,top=5000,left=5000");
	document.theform.target= "_self";
	document.theform.submit();
}


function EDCal(NombreCampo,Camino, Idioma){

	eval("var valor = document.theform." + NombreCampo + ".value;");
	if ( valor != '' ) {
		if (!(isValidDate( valor, Idioma))){
 	    	eval("document.theform." + NombreCampo + ".select();");
        	eval("document.theform." + NombreCampo + ".focus();");
			return false;
  		}
	}
	//Definir el formato de fecha a utilizar en el calendario.
	selectedLanguage = Idioma.toLowerCase( )
	if (Idioma.toUpperCase( ) == 'EU')
		calDateFormat    = "yyyy/MM/DD";
	else
		calDateFormat    = "DD/MM/yyyy";
	eval("setDateField(document.theform."+ NombreCampo +");");
	var CamiCalen = Camino + "calendario.asp";
	top.newWin = window.open(CamiCalen,'cal','width=210,height=230','dependent=yes,screenX=200, screenY=300, titlebar=yes');
     return true;
}
	
function EDCal2(NombreCampoF){
		//setDateField(document.theform.fecha);
		eval("setDateField(document.theform."+ NombreCampoF +");");
	var CamiCalen = Camino + "calendario.asp";
        top.newWin = window.open(CamiCalen, 'cal', 'dependent=yes, width=210, height=230, screenX=200, screenY=300, titlebar=yes');
     return true;
    }
	
/*
function EDCal2(){		
		setDateField(document.theform.ffin);
        top.newWin = window.open('calendario.html', 'cal', 'dependent=yes, width=210, height=230, screenX=200, screenY=300, titlebar=yes');
     return true;
    }
*/

function date_to_str_eur (fecha) {

		var Strfecha = ((fecha.getDate()<10) ? "0" : "" ) + fecha.getDate() + "/";
		Strfecha += (((fecha.getMonth() + 1) <10) ? "0" : "") + (fecha.getMonth() + 1) + "/";
		Strfecha += fecha.getFullYear();
		return Strfecha
}

function date_to_str_ekr (fecha) {

		var Strfecha = fecha.getFullYear() + "/";
		Strfecha += (((fecha.getMonth() + 1) <10) ? "0" : "") + (fecha.getMonth() + 1) + "/";
		Strfecha += ((fecha.getDate()<10) ? "0" : "" ) + fecha.getDate();
		return Strfecha
}



//Valida una fecha en formato yyyy-mm-dd o dd/mm/yyyy
function isValidDate(dateStr, idioma)
{
	// MM/DD/YY   MM/DD/YYYY   MM-DD-YY   MM-DD-YYYY

	var datePat = /^(\d{1,2})(\/|-)(\d{1,2})\2(\d{4})$/; // requires 4 digit year
	var datePat_eu = /^(\d{4})(\/|-)(\d{1,2})\2(\d{1,2})$/; // requires 4 digit year

	textmes=new Array(12)
	textmes[1]="Enero"
	textmes[2]="Febrero"
	textmes[3]="Marzo"
	textmes[4]="Abril"
	textmes[5]="Mayo"
	textmes[6]="Junio"
	textmes[7]="Julio"
	textmes[8]="Agosto"
	textmes[9]="Septiembre"
	textmes[10]="Octubre"
	textmes[11]="Noviembre"
	textmes[12]="Diciembre"

	if (idioma.toUpperCase( ) == "EU")
		var matchArray = dateStr.match(datePat_eu); // is the format ok?
	else
		var matchArray = dateStr.match(datePat); // is the format ok?
		
	if (matchArray == null) 
		{
			if (idioma.toUpperCase( ) == "EU")
				alert(dateStr + " Dataren formatua oker dago.")
			else
				alert(dateStr + " Fecha con formato no válido.")
			return false;
		}
	if (idioma.toUpperCase( ) == "EU") {
		year = matchArray[1]; // parse date into variables
		month = matchArray[3];
		day = matchArray[4]; 
	} else {
		day = matchArray[1]; // parse date into variables
		month = matchArray[3];
		year = matchArray[4];
	}
	//alert("dia:" + day + "mes:" + month + "Año:" + year)
	if (month < 1 || month > 12) 
		{ // check month range
			if (idioma.toUpperCase( ) == "EU")
				alert("Hilabeteak urtarrila eta abenduaren artekoa izan behar du." );
			else	
				alert("Mes debe ser entre Enero y Diciembre" );
			return false;
		}
	if (day < 1 || day > 31) 
		{	if (idioma.toUpperCase( ) == "EU")
				alert("Egunak 1 eta 31aren artekoa izan behar du.");
			else
				alert("Día debe ser entre 1 y 31.");
			return false;
		}
	if ((month==4 || month==6 || month==9 || month==11) && day==31) 
		{
		var ValMes =eval("textmes["+ month +"];");
		if (idioma.toUpperCase( ) == "EU")
			alert(ValMes+"k ez dauka 31 egun!")
		else
			alert("El mes de  "+ValMes+" no tiene 31 días!")
		return false;
		}
	if (month == 2) 
		{ // check for february 29th
		var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
		if (day>29 || (day==29 && !isleap)) 
			{if (idioma.toUpperCase( ) == "EU")
				alert(year + "ko otsailak ez dauka " + day + " egun!");

			 else	
				 alert("Febrero del año " + year + " no tiene " + day + " días!");
			return false;
		   }
		}

return true;

}


function Verificar(msg) {
var mac = false;
if (navigator.appVersion.toLowerCase().indexOf("mac") != -1) {
    mac = true;
}
var bit = false;
var ctext1 = '<FONT FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="1">&nbsp;(';
var ctext2 = ')</FONT>';
    if ((document.all)&&(!mac)) {
        bit = true;
        if (msg.length > 0) {
            CUANTOS.innerHTML = ctext1 + msg.length + ctext2;
        }
        if (msg.length > 119) {
            return false;
        } else {
            return true;
        }
    } else {
        return true;
    }
}

function PegarTexto(msg) {
	var mac = false;
if (navigator.appVersion.toLowerCase().indexOf("mac") != -1) {
    mac = true;
}
var bit = false;
var ctext1 = '<FONT FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="1">&nbsp;(';
var ctext2 = ')</FONT>';

    if ((document.all)&&(!mac)) {
        if (window.clipboardData) {
            if ((msg.length + window.clipboardData.getData("Text").length) > 160) {
                alert("No se puede pegar ese trozo de texto ya que rebasa los 160 caracteres.");
                return false;
            } else {
                return true;
            }
        }
    } else {
        return true;
    }
}
function esFechaMayor(fini,ffin,idioma)

{
		//
		if (idioma.toUpperCase( ) == "EU")
			var datePat = /^(\d{4})(\/|-)(\d{1,2})\2(\d{1,2})$/; // requires 4 digit year
		else
			var datePat = /^(\d{1,2})(\/|-)(\d{1,2})\2(\d{4})$/; // requires 4 digit year			
		var todatei = fini;       
		var todatef = ffin;
		var matchArrayi = todatei.match(datePat); 
		var matchArrayf = todatef.match(datePat);
		if (idioma.toUpperCase( ) == "EU")
		{
			var todateii = new Date(matchArrayi[4] + "/" + matchArrayi[1]+ "/" + matchArrayi[3]);       
			var todateff = new Date(matchArrayf[4] + "/" + matchArrayf[1]+ "/" + matchArrayf[3]);
		}
		else
		{
			var todateii = new Date(matchArrayi[3] + "/" + matchArrayi[1]+ "/" + matchArrayi[4]);       
			var todateff = new Date(matchArrayf[3] + "/" + matchArrayf[1]+ "/" + matchArrayf[4]);
		}

		var datediff = todateff.getTime()- todateii.getTime() ;
		var daydiff = Math.round(datediff / (1000 * 60 * 60 * 24));
		//

        if (daydiff >= 0)
    		{
	    	return true;
			}
		else 
			{ 		
		 	//alert("Fechas no válidas. ¡Fecha Fin < Fecha Inicio!");
				return false;
		    }
		    
return true;
}

/***** Cambia de color los TR (Lista) *****************/
function entrar(src,color_entrada, tip_cursor) 
{
	src.bgColor=color_entrada;
	src.style.cursor=tip_cursor;
}
function sortir(src,color_default) 
{
	src.bgColor=color_default;src.style.cursor="default";
}

// Cálculo de la letra del DNI, devuelve solo la letra
function DNICalcu(n){
var d =(n/23)
d = Math.floor(d);
var e=d*23
var r=n-e
var letra=""
var Dnifin=""
if (r==0)
letra= "T"
if (r==1)
letra= "R"
if (r==2)
letra= "W"
if (r==3)
letra= "A"
if (r==4)
letra= "G"
if (r==5)
letra= "M"
if (r==6)
letra= "Y"
if (r==7)
letra= "F"
if (r==8)
letra= "P"
if (r==9)
letra= "D"
if (r==10)
letra= "X"
if (r==11)
letra= "B"
if (r==12)
letra= "N"
if (r==13)
letra= "J"
if (r==14)
letra= "Z"
if (r==15)
letra= "S"
if (r==16)
letra= "Q"
if (r==17)
letra= "V"
if (r==18)
letra= "H"
if (r==19)
letra= "L"
if (r==20)
letra= "C"
if (r==21)
letra= "K"
if (r==22)
letra= "E"

return letra
}


function Validar_DNI(dni_nif) {
	var dni_result = "";
	var Codigo_Error = 0
	var numero
	var control
	var y
	if (dni_nif.length < 9) {
		y = dni_nif.substr(0,1).toUpperCase( ).match(/[XKLM]/);
		if ( y != null){
			//Formato DNI incorrecto. Debe introducir una letra, 7 dígitos más la letra de control.
			Codigo_Error = 4
		}
		else{
			//Formato DNI incorrecto. Debe introducir 8 dígitos más la letra de control.
			Codigo_Error = 2
		}
	}
	else {
		y = dni_nif.substr(0,1).toUpperCase( ).match(/[XKLM]/);
		if ( y != null){
			dni_L = y;
			//Calcular el numero del DNI
			if (dni_nif.substr(1,1).toUpperCase( )=="0"){
				if (dni_nif.length == 9){
					numero = dni_nif.substr(1,7);
					control = dni_nif.substr(8,1).toUpperCase( );
				}
				else {
					numero = dni_nif.substr(1,8);
					control = dni_nif.substr(9,1).toUpperCase( );
				}
			}
			else{
				if (dni_nif.length == 9) {
					numero = dni_nif.substr(1,7);
					control = dni_nif.substr(8,1).toUpperCase( );
				}
				else {
					//Debe tener longitud 9 solamente si no empieza por cero el número.
					Codigo_Error = 4;
				}	
			}
			if (!isNaN(numero)){
				dni_N = parseFloat(numero);
				//Calcular el digito de control
				dni_C = DNICalcu(dni_N).toUpperCase( );
				if (dni_C == control){	
					dni_result = dni_L + "/" + dni_N + "/"+ dni_C;
				}
				else{
					//Digito de control incorrecto
					Codigo_Error = 3;
				}
			}
			else {

				//No son números los (7 u 8 caracteres) esperados en su lugar
				Codigo_Error = 4;
			}
		}
		else {
			if (dni_nif.substr(0,1).match(/\d/) != null){
				if (dni_nif.length == 9){
					dni_L = " ";
					//Calcular el digito de control
					if (!isNaN(dni_nif.substr(0,8))){
						dni_N = parseFloat(dni_nif.substr(0,8)); 
						dni_C = DNICalcu(dni_N).toUpperCase( );
						if (dni_C == dni_nif.substr(8,1).toUpperCase( )){	
							dni_result = dni_L + "/" + dni_N + "/"+ dni_C;
						}
						else{
							//Digito de control incorrecto
							Codigo_Error = 3;
						}
					}
					else {
						//No exiten 8 dígitos cuando comienza con un dígito.
						Codigo_Error = 2;
					}
				}
				else {
					//No exiten 8 dígitos cuando comienza con un dígito.
					Codigo_Error = 2;
				}
			}	
			else{
				//No es ni dígito ni una letra comprendida entre X,K,L,M
				Codigo_Error = 1;
			}
		}
	}
		
	if (dni_result == ""){
		//Ha ocurrido un error, el que es devuelto por la función.
		dni_result = Codigo_Error.toString( )
	}
	return dni_result;
}

function NIFCalcu(str_nif) {

	var r1 = parseInt(str_nif.substr(1,1)) + parseInt(str_nif.substr(3,1)) + parseInt(str_nif.substr(5,1));
	//Calcular R2
	var i1 = (parseInt(str_nif.substr(0,1))*2);
	if (i1 >= 10)
		{l1 = parseInt(i1 / 10) + (i1 % 10) ;
	}
	else l1 = i1;

	var i2 = (parseInt(str_nif.substr(2,1))*2);
	if (i2 >= 10){
		l2 = parseInt(i2 / 10) + (i2 % 10) ;
	}
	else l2 = i2;

	var i3 = (parseInt(str_nif.substr(4,1))*2);	
	if (i3 >= 10){
		l3 = parseInt(i3 / 10) + (i3 % 10) ;
	} 
	else l3 = i3;

	var i4 = (parseInt(str_nif.substr(6,1))*2);	
	if (i4 >= 10){
		l4 = parseInt(i4 / 10) + (i4 % 10) ;
	} 
	else l4 = i4;

	var r2 = l1+ l2 + l3 + l4;

	var R = r1 + r2;

	var Resto = (R % 10);

	var Comp = 10 - Resto;

	if (Comp == 10)
	{	Comp = 0;
	}
	digito=""
	if (Comp == 1){ digito = Comp + "A"}
	if (Comp == 2){ digito = Comp + "B" }
	if (Comp == 3){ digito = Comp + "C"}
	if (Comp == 4){ digito = Comp + "D"}
	if (Comp == 5){ digito = Comp + "E"}			
	if (Comp == 6){ digito = Comp + "F"}
	if (Comp == 7){ digito = Comp + "G"}
	if (Comp == 8){ digito = Comp + "H"}
	if (Comp == 9){ digito = Comp + "I"}
	if (Comp == 0){ digito = Comp + "J"}

	return digito;

}



function Validar_NIF(dni_nif) {
  var nif_result = "";
	var Codigo_Error = 0
	var numero
	var control

  if (dni_nif.length != 9) {
	// No posee 7 dígitos
	Codigo_Error = 2;
  }
  else{
		var x = dni_nif.substr(0,1).toUpperCase( ).match(/[ABCDEFGHSPQN]/);
		if ( x != null){
			nif_L = x;
			//Calcular el digito de control
			if (!isNaN(dni_nif.substr(1,7))){
				nif_N = parseFloat(dni_nif.substr(1,7));
				nif_C = NIFCalcu(dni_nif.substr(1,7));
				dc_ok = eval ("dni_nif.substr(8,1).toUpperCase( ).match(/[" + nif_C + "]/) != null;");
				if (dc_ok)
				{	
					nif_result = nif_L + "/" + nif_N + "/"+ dni_nif.substr(8,1).toUpperCase( );
				} 
				else {
					//Digito de control incorrecto
					Codigo_Error = 3
				}
			} 
			else{
				// No posee 7 dígitos
				Codigo_Error = 2;
			}
		}
		else{
			// No posee las letras permitidas
			Codigo_Error = 1;
		}

  }

	if (nif_result == ""){
		//Ha ocurrido un error, el que es devuelto por la función.
		nif_result = Codigo_Error.toString( )
	}

  return nif_result;
}

//OBTENER DIGITO DE CONTROL
function obtenerDigito(valor){
  valores = new Array(1, 2, 4, 8, 5, 10, 9, 7, 3, 6);
  control = 0;
  for (i=0; i<=9; i++)
    control += parseInt(valor.charAt(i)) * valores[i];
  control = 11 - (control % 11);
  if (control == 11) control = 0;
  else if (control == 10) control = 1;
  return control;
}

//PARA COMPROBAR SI LOS CAMPOS SON NUMERICOS
function numerico(valor){
  cad = valor.toString();
  for (var i=0; i<cad.length; i++) {
    var caracter = cad.charAt(i);
	if (caracter<"0" || caracter>"9")
	  return false;
  }
  return true;
}

function SeleccionarOpcion(n, formulario, campo, tamanno)
{ 
	if ((tamanno == 1) && (n == 0)){
		eval("document."+formulario+"."+campo+".checked=true;");
	}else{
		eval("document."+formulario+"."+campo+"[n].checked=true;");
	}	
}


function EscribirDNI (strLetra,strDNI,strCCtr)
{
	var DNIlog, NumCeros, StrCeros, DNIFinal, LonTotDNI;
	StrCeros = ""
	if (strDNI == "")
		DNIFinal = "";
	else
	{
		if ((strLetra == "") || (strLetra == "0"))
		{
			LonTotDNI = 8;
			strLetra = "";
		}
		else
			LonTotDNI = 7;
		DNIlog = strDNI.length;
		NumCeros = LonTotDNI - DNIlog
		if (NumCeros > 0)
			for (var i = 0; i< NumCeros ; i++)
			{
				StrCeros += "0"
			}
		else
			StrCeros = ""
		DNIFinal = strLetra + StrCeros + strDNI + strCCtr
	}
	return DNIFinal
}


///////////////////////////////////////////////////////////////////////////////////////////      annadirFilaTabla     /////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function annadirFilaTabla(Tabla, strRadio, aParams){

	alert(Tabla + strRadio+ aParams[0] + aParams[1]+ aParams[2]);
	var miFila;
	var miColumna;

	miFila = Tabla.insertRow();
	miFila.onmouseover = "entrar(this,'#FFE79F','hand');"; 
	miFila.onmouseout = "sortir(this,'#CFE0E0');";
	miColumna = miFila.insertCell();
	miColumna.insertAdjacentHTML("AfterBegin", "<input TYPE='radio' id='" + strRadio + "' name='"  + strRadio + "' value='" + aParams[0] + "'>");
	for (var i = 1; i<aParams.length; i++)
	{
		miColumna = miFila.insertCell();
		miColumna.insertAdjacentText("AfterBegin", aParams[i]);
	}
	actualizarOnclick(Tabla, strRadio);
}
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////


///////////////////////////////////////////////////////////////////////////////////////////      actualizarOnclick    /////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function actualizarOnclick(Tabla, strRadio)
{
	for (var i = 0; i < Tabla.rows.length; i++)
	{
		Tabla.rows[i].onclick = "SeleccionarOpcion(" + i + ", 'theform', '" + strRadio + "', " + Tabla.rows.length + ");";
	}
}
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

function comprobarDecimales(fieldName, idioma, NumMaxEnt, NumMaxDeci) {

if (Trim(fieldName.value) != ""){ // Solo haremos la comprobación si el valor es distinto de "" 
	// Comprobamos que solo meten números, puntos o comas.
	 var valcorr = true;
	 var lon = fieldName.value.length; 
	 var can_sepdec = 0;
	 var valido2='0123456789';     	// caracteres numéricos válidos
		for (i = 0; i < lon ; i++)
		{
			ss = fieldName.value.substr(i, 1);
	
			if (( ss == 1) || (ss == 2) ||( ss == 3) || (ss == 4)||( ss == 5) || (ss == 6) ||( ss == 7) || (ss == 8) || ( ss == 9) || (ss == 0) ||( ss == ",")||( ss == "."))
			{
					if(ss ==".")  {
					  if (valido2.indexOf(fieldName.value.charAt(i-1)) == -1 
						|| fieldName.value.charAt(i-1) == ''
						|| valido2.indexOf(fieldName.value.charAt(i+1)) == -1
						|| fieldName.value.charAt(i+1) == ''
						|| valido2.indexOf(fieldName.value.charAt(i+2)) == -1
						|| fieldName.value.charAt(i+2) == ''
						|| valido2.indexOf(fieldName.value.charAt(i+3)) == -1
						|| fieldName.value.charAt(i+3) == '') {
	//traduccir INI
							if (idioma.toUpperCase( ) == "EU")
								alert('Separador de enteros (.) mal posicionado EU')
							else
								alert('Separador de enteros (.) mal posicionado')
	//traduccir FIN
							fieldName.select();
							fieldName.focus();
							return false;
					  }
					  else
						 {
						if(valido2.indexOf(fieldName.value.charAt(i+4)) != -1
						  && fieldName.value.charAt(i+4) != '') {
	//traduccir INI
						if (idioma.toUpperCase( ) == "EU")
							alert('Si utiliza puntuación de miles, no omita ninguno EU')
						else
							alert('Si utiliza puntuación de miles, no omita ninguno')
	//traduccir FIN
						  fieldName.select();
						  fieldName.focus();
						   return false;
							}
						 if(i > 3 && fieldName.value.charAt(i-4) != ''
						&& valido2.indexOf(fieldName.value.charAt(i-4)) != -1) {
	//traduccir INI
							if (idioma.toUpperCase( ) == "EU")
								alert('Si utiliza puntuación de miles, no omita ninguno EU')
							else
								alert('Si utiliza puntuación de miles, no omita ninguno')
	//traduccir FIN
							fieldName.select();
							fieldName.focus();
							 return false;
							}
						}
						}	
			}
			else
			{valcorr = false;
			}
		 if(ss == ",") {
		   can_sepdec++;
		}
		}
	
	//decpermitidos = 3;  // Decimales que permitimos meter
	if (valcorr != true) { //
	//traduccir INI
		if (idioma.toUpperCase( ) == "EU")
			alert('El campo tiene que ser numérico EU')
		else
			alert('El campo tiene que ser numérico')
	//traduccir FIN
		fieldName.select();
		fieldName.focus();
		return false;
	}
	else {
			if(can_sepdec > 1) {
	//traduccir INI
				if (idioma.toUpperCase( ) == "EU")
					alert('Ingresar solo una (,) para decimales EU')
				else
					alert('Ingresar solo una (,) para decimales')
	//traduccir FIN
				 fieldName.select();
				 fieldName.focus();
				 return (false);
			 }
			else {
				if (fieldName.value.indexOf(',') == -1) fieldName.value += ",";
				dectext = fieldName.value.substring(fieldName.value.indexOf(',')+1, fieldName.value.length);
	
				//if (dectext.length > decpermitidos)
				//{
	//traduccir INI
			//	if (idioma.toUpperCase( ) == "EU")
				//	alert('Los decimales permitidos son ' + decpermitidos + ' como máximo. EU')
				//else
				//	alert('Los decimales permitidos son ' + decpermitidos + ' como máximo.')
	//traduccir FIN
				//fieldName.select();
				//fieldName.focus();
				//return (false);
				//}
			}
			
			var PartEntera = fieldName.value.split(",")[0];
			var ParEntPuntos = PartEntera
			var PartDecimal = fieldName.value.split(",")[1];
			for (i = 0; i < PartEntera.length ; i++){
			 PartEntera = PartEntera.replace(".", "");
			}
			
			if(PartEntera.length > NumMaxEnt){
				if (NumMaxDeci == 0){
					fieldName.value = ParEntPuntos;
				}
				if (idioma.toUpperCase( ) == "EU")
					alert('El número máximo de enteros es '+NumMaxEnt +' EU');
				else
					alert('El número máximo de enteros es '+NumMaxEnt)
				fieldName.select();
				fieldName.focus();
				return (false);
			}
			else{
				if (PartDecimal.length > 0){
					if (PartDecimal.length > NumMaxDeci){
						if (idioma.toUpperCase( ) == "EU")
							alert('El número máximo de decimales es '+NumMaxDeci+' EU');
						else
							alert('El número máximo de decimales es '+NumMaxDeci)
						fieldName.select();
						fieldName.focus();
						return (false);
					}
				}
			}
			if (NumMaxDeci == 0){
				fieldName.value = ParEntPuntos;
			}
			return(true)
	 }
 }
 else{
	return(true)
 }
}
