// JavaScript Document

	function getElement(psID) {
	   if(document.all) {
		  return document.all[psID];
	   } else {
		  return document.getElementById(psID);
	   }
	}


	function VDigit11(strData, iDigits, iMaxMult)  {

		var iMult, iSum, i, j;
    
		for(j=1; j<=iDigits; j++) {
			iSum = 0;
			iMult = 2;
			for(i=strData.length-1; i>=0; i--) {
				iSum += (iMult * parseInt(strData.charAt(i)));
				if (++iMult > iMaxMult) {
					iMult = 2;
				}
			}
			strData += ((iSum * 10) % 11) % 10;
		}
		return strData.substr(strData.length - iDigits, iDigits);
	}

	function CheckCPFCNPJ(obj) {
		var strData = obj.value;
		var  strTitle = ".CPF ";
		var iMaxMult;

		var iData = strData.substring(0, strData.length - 2)
		var VDigit  = strData.substring(strData.length - 2, strData.length)

		if (VDigit != VDigit11(iData, 2, iMaxMult)) {
			alert(strTitle + "Inválido");
			obj.focus();
		}
	}


function KeyDownFloat(obj,evt){
	//alert(evt.keyCode);
	if ((evt.keyCode!=39)&&(evt.keyCode!=37)&&(evt.keyCode!=8)&&(evt.keyCode!=46)&&(evt.keyCode!=48)&&(evt.keyCode!=49)&&(evt.keyCode!=50)&&(evt.keyCode!=51)&&(evt.keyCode!=52)&&(evt.keyCode!=53)&&(evt.keyCode!=54)&&(evt.keyCode!=55)&&(evt.keyCode!=56)&&(evt.keyCode!=57)&&(evt.keyCode!=96)&&(evt.keyCode!=97)&&(evt.keyCode!=98)&&(evt.keyCode!=99)&&(evt.keyCode!=100)&&(evt.keyCode!=101)&&(evt.keyCode!=102)&&(evt.keyCode!=103)&&(evt.keyCode!=104)&&(evt.keyCode!=105)&&(evt.keyCode!=194)&&(evt.keyCode!=190)&&(evt.keyCode!=188)&&(evt.keyCode!=110))
	{
		evt.returnValue=false;
		return false;
	}
}

function formataValor(campo,evt) {
	if ((evt.keyCode!=39)&&(evt.keyCode!=37)){
		campo.value = filtraCampo(campo);
		vr = campo.value;
		tam = vr.length;

		if ( tam <= 2 ){ 
	 		campo.value = vr ; }
	 	if ( (tam > 2) && (tam <= 5) ){
	 		campo.value = vr.substr( 0, tam - 2 ) + '.' + vr.substr( tam - 2, tam ) ; }
	 	if ( (tam >= 6) && (tam <= 8) ){
	 		campo.value = vr.substr( 0, tam - 5 ) + '' + vr.substr( tam - 5, 3 ) + '.' + vr.substr( tam - 2, tam ) ; }
	 	if ( (tam >= 9) && (tam <= 11) ){
	 		campo.value = vr.substr( 0, tam - 8 ) + '' + vr.substr( tam - 8, 3 ) + '' + vr.substr( tam - 5, 3 ) + '.' + vr.substr( tam - 2, tam ) ; }
	 	if ( (tam >= 12) && (tam <= 14) ){
	 		campo.value = vr.substr( 0, tam - 11 ) + '' + vr.substr( tam - 11, 3 ) + '' + vr.substr( tam - 8, 3 ) + '' + vr.substr( tam - 5, 3 ) + '.' + vr.substr( tam - 2, tam ) ; }
	 	if ( (tam >= 15) && (tam <= 18) ){
	 		campo.value = vr.substr( 0, tam - 14 ) + '' + vr.substr( tam - 14, 3 ) + '' + vr.substr( tam - 11, 3 ) + '' + vr.substr( tam - 8, 3 ) + '' + vr.substr( tam - 5, 3 ) + '.' + vr.substr( tam - 2, tam ) ;}
	}
}

function filtraCampo(campo){
	var s = "";
	var cp = "";
	vr = campo.value;
	tam = vr.length;
	for (i = 0; i < tam ; i++) {  
		if (vr.substring(i,i + 1) != "/" && vr.substring(i,i + 1) != "-" && vr.substring(i,i + 1) != ""  && vr.substring(i,i + 1) != "." ){
		 	s = s + vr.substring(i,i + 1);}
	}
	campo.value = s;
	return cp = campo.value
}


function GetAnyElement(val_env,val_name)
{
	var dall = (navigator.appName!="Microsoft Internet Explorer")?val_env.getElementsByTagName("*"):val_env.all;
	for(i=0; i < dall.length; i++)
	{ 
		if ((dall[i].id==val_name)||(dall[i].name==val_name))
		{
			return (dall[i]);
		}
	}
}

function KeyDownDate(obj,evt)
{
	if ((evt.keyCode==48)||(evt.keyCode==49)||(evt.keyCode==50)||(evt.keyCode==51)||(evt.keyCode==52)||(evt.keyCode==53)||(evt.keyCode==54)||(evt.keyCode==55)||(evt.keyCode==56)||(evt.keyCode==57)||(evt.keyCode==96)||(evt.keyCode==97)||(evt.keyCode==98)||(evt.keyCode==99)||(evt.keyCode==100)||(evt.keyCode==101)||(evt.keyCode==102)||(evt.keyCode==103)||(evt.keyCode==104)||(evt.keyCode==105))
	{
		if (obj.value.substr(0,2)>31)
		{
			//alert("Data inválida!");
			evt.returnValue=false;
			return false;
		}
		if (obj.value.substr(3,2)>12)
		{
			//alert("Data inválida!");
			evt.returnValue=false;
			return false;
		}
		if (obj.value.length==2)
		{
			obj.value = obj.value+"/";
		}
		if (obj.value.length==5)
		{
			obj.value = obj.value+"/";
		}
	
	}
	else if ((evt.keyCode!=8)&&(evt.keyCode!=46)&&(evt.keyCode!=9)&&(evt.keyCode!=37)&&(evt.keyCode!=38)&&(evt.keyCode!=39)&&(evt.keyCode!=40))
	{
		evt.returnValue=false;
		return false;
	}
	if (((evt.keyCode==9)||(evt.keyCode==13))&&((obj.value.length<8)&&(obj.value.length>0))){
		evt.returnValue=false;
		return false;
	}
}
function ExitDate(obj)
{
	if (((obj.value.length<8)&&(obj.value.length>0))||(obj.value.length==9))
	{
		alert("Data inválida!");
		evt.returnValue=false;
		return false;
//		obj.focus();
	}
	if (obj.value.length==8)
	{
		if (obj.value.substr(6,2)<10)
		{
			obj.value = obj.value.substr(0,6)+"20"+obj.value.substr(6,2);
		}
		else
		{
			obj.value = obj.value.substr(0,6)+"19"+obj.value.substr(6,2);
		}
	}
}


function ExitHour(obj)
{
	if (((obj.value.length<5)&&(obj.value.length>0)))
	{
		alert("Hora inválida!");
		obj.focus();
		return false;
	}
}

function KeyDownHour(obj,evt)
{
	if ((evt.keyCode==48)||(evt.keyCode==49)||(evt.keyCode==50)||(evt.keyCode==51)||(evt.keyCode==52)||(evt.keyCode==53)||(evt.keyCode==54)||(evt.keyCode==55)||(evt.keyCode==56)||(evt.keyCode==57)||(evt.keyCode==96)||(evt.keyCode==97)||(evt.keyCode==98)||(evt.keyCode==99)||(evt.keyCode==100)||(evt.keyCode==101)||(evt.keyCode==102)||(evt.keyCode==103)||(evt.keyCode==104)||(evt.keyCode==105))
	{
		if (obj.value.length==2)
		{
			obj.value = obj.value+":";
		}
		if (obj.value.substr(0,2)>23)
		{
			evt.returnValue=false;
			return false;
//			alert("Hora inválida!");
		}
		if (obj.value.substr(3,1)>5)
		{
			evt.returnValue=false;
			return false;
	//		alert("Hora inválida!");
		}
	
	}
	else if ((evt.keyCode!=8)&&(evt.keyCode!=46)&&(evt.keyCode!=9)&&(evt.keyCode!=37)&&(evt.keyCode!=38)&&(evt.keyCode!=39)&&(evt.keyCode!=40))
	{
		evt.returnValue=false;
		return false;
	}
}



function _KeyDownFloat(obj,evt)
{
	if ((evt.keyCode==48)||(evt.keyCode==49)||(evt.keyCode==50)||(evt.keyCode==51)||(evt.keyCode==52)||(evt.keyCode==53)||(evt.keyCode==54)||(evt.keyCode==55)||(evt.keyCode==56)||(evt.keyCode==57)||(evt.keyCode==96)||(evt.keyCode==97)||(evt.keyCode==98)||(evt.keyCode==99)||(evt.keyCode==100)||(evt.keyCode==101)||(evt.keyCode==102)||(evt.keyCode==103)||(evt.keyCode==104)||(evt.keyCode==105)||(evt.keyCode==194)||(evt.keyCode==190)||(evt.keyCode==188)||(evt.keyCode==110))
	{
		if ((evt.keyCode==188)||(evt.keyCode==110))
		{
			evt.returnValue=false;
			return false;
			if (obj.value.indexOf(",")<0)
			{
				obj.value = obj.value+".";
			}
		}	
		if (evt.keyCode==190)
		{
			if (obj.value.indexOf(".")>0)
			{
				evt.returnValue=false;
				return false;
			}
		}
		if (evt.keyCode==194)
		{
			if (obj.value.indexOf(".")>0)
			{
				evt.returnValue=false;
				return false;
			}
		}
	}
	else if ((evt.keyCode!=8)&&(evt.keyCode!=46)&&(evt.keyCode!=9)&&(evt.keyCode!=37)&&(evt.keyCode!=38)&&(evt.keyCode!=39)&&(evt.keyCode!=40))
	{
		evt.returnValue=false;
		return false;
	}
}

function _ExitFloat(obj)
{
   	/*if (obj.value.length>0)
   	{
   		if (obj.value.indexOf(".")>0)
		{
			var strDec = obj.value.substr(obj.value.indexOf(".")+1,2);
			if (strDec.length < 2)
			{
				strDec = strDec + '0';
			}
			obj.value = obj.value.substr(0,obj.value.indexOf(".")) +','+ strDec;
		}
		else
		{
			obj.value = obj.value+',00';
		}
	}*/
}


function KeyDownNumber(obj,evt)
{
	if (evt.keyCode==39)
	{ 
/*	if ((digits>0) && (obj.value.length==digits)) evt.keyCode=9;*/
	}
	if ((evt.keyCode==48)||(evt.keyCode==49)||(evt.keyCode==50)||(evt.keyCode==51)||(evt.keyCode==52)||(evt.keyCode==53)||(evt.keyCode==54)||(evt.keyCode==55)||(evt.keyCode==56)||(evt.keyCode==57)||(evt.keyCode==96)||(evt.keyCode==97)||(evt.keyCode==98)||(evt.keyCode==99)||(evt.keyCode==100)||(evt.keyCode==101)||(evt.keyCode==102)||(evt.keyCode==103)||(evt.keyCode==104)||(evt.keyCode==105))
	{
	}
	else if ((evt.keyCode!=8)&&(evt.keyCode!=46)&&(evt.keyCode!=9)&&(evt.keyCode!=37)&&(evt.keyCode!=38)&&(evt.keyCode!=39)&&(evt.keyCode!=40))
	{
		evt.returnValue=false;
		return false;
	}
}

function KeyDownCurrency(obj,evt)
{
	formataValor(obj);
	if ((evt.keyCode!=8)&&(evt.keyCode!=46)&&(evt.keyCode!=9)&&(evt.keyCode!=37)&&(evt.keyCode!=38)&&(evt.keyCode!=39)&&(evt.keyCode!=40))
	{
		evt.returnValue=false;
		return false;
	}
}

function CharCase(obj,val)
{
	if (val == "U")
	{
		obj.value = obj.value.toUpperCase();
	}
	if (val == "L")
	{
		obj.value = obj.value.toLowerCase();
	}
}



function getAbsolutePos(el) {
	var SL = 0, ST = 0;
	var is_div = /^div$/i.test(el.tagName);
	if (is_div && el.scrollLeft)
		SL = el.scrollLeft;
	if (is_div && el.scrollTop)
		ST = el.scrollTop;
	var r = { x: el.offsetLeft - SL, y: el.offsetTop - ST };
	if (el.offsetParent) {
		var tmp = this.getAbsolutePos(el.offsetParent);
		r.x += tmp.x;
		r.y += tmp.y;
	}
	return r;
};


