function GTIN_validarCampo(o){
	oa = document.all(o.name + "_gtinayuda");
	oa.innerHTML="";
	o.value=o.value
	if (o.value!="")
		if (!GTIN_validarNro(o.value))
		{
			//window.alert("El GTIN " + o.value + " no es válido.");
			oa.innerHTML = "<font color=red><b>GTIN no válido&nbsp;</b></span>"
			o.select();
			return false;
		}else{
			//o.value="00000000000000" + o.value
			//alert(o.value.length)
			//o.value=o.value.substring(o.value.length-14)
			o.value=o.value
			oa.innerHTML = "<font color=green>GTIN válido&nbsp;</font>";
			return true;
		}
	
	return true;
}

function GLN_validarCampo(o){
	oa = document.all(o.name + "_glnayuda");
	oa.innerHTML="";
	o.value=o.value
	if (o.value!="")
		if (!GTIN_validarNro(o.value))
		{
			//window.alert("El GLN " + o.value + " no es válido.");
			oa.innerHTML = "<font color=red><b>GLN no válido&nbsp;</b></span>"
			o.select();
			return false;
		}else{
			//o.value="00000000000000" + o.value
			//alert(o.value.length)
			//o.value=o.value.substring(o.value.length-14)
			o.value=o.value
			oa.innerHTML = "<font color=green>GLN válido&nbsp;</font>";
			return true;
		}
	
	return true;
}

function GTIN_validarNro(nGTIN){
    try {
        var mtxNGTIN = new Array(); //los nros. separados
        var strGTIN = new String(nGTIN);
        var largo=0;
        var i=0;
        var aux=0;
        var vMulti=0; //valor multiplicador
        var multDiezCercano=0; //multiplo de diez mas cercano
        var sumaTot=0;
        var digVerif=0; //el digito verificador
        var digVerifOrig=0; //el digito verificador que trea el nro.

        digVerifOrig=strGTIN.substring((strGTIN.length-1),strGTIN.length);
//        window.alert("el dig. que viene es: "+digVerifOrig);
        largo=strGTIN.length-1;

        if (largo<0) {
            return false;
        }else{
            for (i=0;i<largo;i++){
                mtxNGTIN[i]=strGTIN.substring((largo-(i+1)),(largo-i));
//                window.alert(mtxNGTIN[i]);
            }

            vMulti=1;
            for (i=0;i<largo;i++){
                if (vMulti==1){
                    vMulti=3;
                }else{
                    vMulti=1;
                }
                aux=(mtxNGTIN[i]*vMulti);
                mtxNGTIN[i]=aux;
            }

            aux=0;
            for (i=0;i<largo;i++){
                aux=aux+mtxNGTIN[i];
            }
            sumaTot=aux;


            multDiezCercano=parseInt(sumaTot/10);
            multDiezCercano=(multDiezCercano*10)+10;

            digVerif=multDiezCercano-sumaTot;
            //window.alert (digVerif);
            
            if (digVerif==10)
                digVerif=0;
//            window.alert(digVerif);
            if (digVerif!=digVerifOrig){
                //GTIN_avisar("El nro. GTIN ingresado no es valido !");
//                window.alert("INCORRECTO !");
                return false;
            }else{
//                window.alert("!!! CORRECTO !!!");
                return true;
            }
        }
    }catch(anye){
        //window.alert ("Error verificando el número de GTIN. (0x1)");
        return false;
    }
}

function GTIN_avisar(texto,permanente)
{
    try {
        if (permanente==true){
            ponermsg(texto,'mensaje','msg');
        }else{
            ponermsgT(5,texto,'mensaje','msg');
        }
    }catch(anye){
        //window.alert (texto);
        return true;
    }
}
