function inicializaCamposColor(formulario)
{
	if(eval('document.'+ formulario)) 
	{
		var ObjetosText = eval('document.'+formulario+'.getElementsByTagName("input")');
		var select      = eval('document.'+formulario+'.getElementsByTagName("select")');
		var textArea    = eval('document.'+formulario+'.getElementsByTagName("textarea")');
	
		for (i = 0; i < ObjetosText.length; i++)
		{
	
			if (((ObjetosText[i].type == 'text') || (ObjetosText[i].type == 'password')) && (ObjetosText[i].onblur == null) && (ObjetosText[i].onfocus == null))
			{
				ObjetosText[i].onfocus = function () { enterComponente(this,formulario);  }
				ObjetosText[i].onblur =  function () { exitComponente(this,formulario);  }
				ObjetosText[i].className  = formulario + '_exit';
			}
		}
	
		for (i = 0; i < select.length; i++)
		{
	
			if (  (select[i].onblur == null) && (select[i].onfocus == null))
			{
				select[i].onfocus = function () { enterComponente(this,formulario);  }
				select[i].onblur =  function () { exitComponente(this,formulario);  }
				select[i].className  = formulario + '_exit';
			}
		}
	
		for (i = 0; i < textArea.length; i++)
		{
			if ((textArea[i].onblur == null) && (textArea[i].onfocus == null))
			{
				textArea[i].onfocus = function () { enterComponente(this,formulario);  }
				textArea[i].onblur =  function () { exitComponente(this,formulario);  }
				textArea[i].className  = formulario + '_exit';
			}
		}
	}
}

function colorSelect(formulario)
{
	if(eval('document.'+ formulario)) 
	{
		var select = eval('document.'+ formulario + '.getElementsByTagName("select")');
		var cor = true;
	
		for( var j = 0; j < select.length; j++ )
		{
			cor = true;
		
			for( var i = 0; i < select[j].length; i++ )
			{
				if( cor )
				{
					select[j].options[i].style.background = "#F8FAF5";		
					cor = false;
				}
				else
				{
					select[j].options[i].style.background = "#FFFFFF";		
					cor = true;
				}
				
				select[j].options[i].style.marginLeft = "3px";
			}
		}
	}
}

function enterComponente(e,estilo) 
{
	e.className  = estilo + '_enter';
}

function exitComponente(e,estilo) 
{
	e.className  = estilo + '_exit';
}
function swf($arquivo,$largura,$altura,$bg,$wmode,$title)
{
	document.writeln('<object type="application/x-shockwave-flash" data="' + $arquivo + '" width="' + $largura + '" height="' + $altura + '" title="' + $title + '">');
	document.writeln('<param name="movie" value="' + $arquivo + '">');
	document.writeln('<param name="bgcolor" value="#' + $bg + '">');
	document.writeln('<param name="wmode" value="' + $wmode + '">');
	document.writeln('<param name="menu" value="false">');
	document.writeln('<param name="quality" value="high">');
	document.writeln('</object>');
}

function trim(str)
{        
        return str.replace(/^\s*|\s*$/g,"");
}

function validaData(data) 
{
	var dia = data.substr(0,2);
	var mes = data.substr(3,2);
	var ano = data.substr(6,4);
							  
	// Checa se eh uma data valida
	if ((isNaN(parseInt(dia)) || isNaN(parseInt(mes)) || isNaN(parseInt(ano))) ||(ano < 1900 || ano > 9999) ||(mes < 1 || mes > 12) ||(dia < 1 || dia > 31) ||(mes == 2 && dia > 28 && (ano % 4 != 0)) ||(mes == 2 && dia > 29 && (ano % 4 == 0)) ||(dia > 30 && (mes == 4 || mes == 6 || mes == 9 || mes== 11)))return false;
	else
	return true;
}

function formatar(src, mask) 
{
	var i = src.value.length;
	var saida = mask.substring(0,1);		
	var texto = mask.substring(i);
		
	if (texto.substring(0,1) != saida) 
		src.value += texto.substring(0,1);
}

function Limpar(fld)
{
	fld.value = '';
	fld.focus();
}

function validaDinheiro(fld,e)
{
	var milSep = ".";
	var decSep = ",";
	var sep = 0;
	var key = '';
	var i = j = 0;
	var len = len2 = 0;
	var strCheck = '0123456789';
	var aux = aux2 = '';
	var whichCode = (window.Event) ? e.which : e.keyCode;

	if (whichCode == 13)
		return true;

	key = String.fromCharCode(whichCode);

	if (strCheck.indexOf(key) == -1)
		return false;

	len = fld.value.length;

	for (i = 0; i < len; i++)
		if ((fld.value.charAt(i) != '0') && (fld.value.charAt(i) != decSep))
			break;

	aux = '';

	for (; i < len; i++)
		if (strCheck.indexOf(fld.value.charAt(i))!=-1)
			aux += fld.value.charAt(i);

	aux += key;
	len = aux.length;

	if (len == 0)
		fld.value = '';
	if (len == 1)
		fld.value = '0'+ decSep + '0' + aux;
	if (len == 2)
		fld.value = '0'+ decSep + aux;
	if (len > 2)
	{
		aux2 = '';
		for (j = 0, i = len - 3; i >= 0; i--)
		{
			if (j == 3)
			{
				aux2 += milSep;
				j = 0;
			}
			aux2 += aux.charAt(i);
			j++;
		}
		fld.value = '';
		len2 = aux2.length;

		for (i = len2 - 1; i >= 0; i--)
			fld.value += aux2.charAt(i);
		fld.value += decSep + aux.substr(len - 2, len);
	}
	return false;
}

//###################################################################################
function validaPeso(fld,e)
{
	var milSep = "";
	var decSep = ".";
	var sep = 0;
	var key = '';
	var i = j = 0;
	var len = len2 = 0;
	var strCheck = '0123456789';
	var aux = aux2 = '';
	var whichCode = (window.Event) ? e.which : e.keyCode;

	if (whichCode == 13)
		return true;

	key = String.fromCharCode(whichCode);

	if (strCheck.indexOf(key) == -1)
		return false;

	len = fld.value.length;

	for (i = 0; i < len; i++)
		if ((fld.value.charAt(i) != '0') && (fld.value.charAt(i) != decSep))
			break;

	aux = '';

	for (; i < len; i++)
		if (strCheck.indexOf(fld.value.charAt(i))!=-1)
			aux += fld.value.charAt(i);

	aux += key;
	len = aux.length;

	if (len == 0)
		fld.value = '';

	if (len == 1)
		fld.value = '0'+ decSep + '00' + aux;

	if (len == 2)
		fld.value = '0'+ decSep + '0' + aux;

	if (len == 3)
		fld.value = '0'+ decSep + aux;

	if (len > 3)
	{
		aux2 = '';

		for (j = 0, i = len - 3; i >= 0; i--)
		{
			if (j == 3)
			{
				aux2 += milSep;
				j = 0;
			}
			aux2 += aux.charAt(i);
			j++;
		}	

		fld.value = '';
		len2 = aux2.length;

		for (i = len2 - 1; i >= 1; i--)
			fld.value += aux2.charAt(i);
			
		fld.value += decSep + aux.substr(len - 3, len);
	}
	return false;
}

function ChecaNumero(num) 
{
	var valid = "0123456789"
	var ok = "yes";
	var temp;
	
	for (var i=0; i<num.length; i++) 
	{
		temp = "" + num.substring(i, i+1);		
		if (valid.indexOf(temp) == "-1") ok = "no";
	}
	if (ok == "no") 
		return false;

	return true;
}

function validaCEP(cep) 
{
	var valid = "0123456789"
	var ok = "yes";
	var temp;
	
	if(cep.length != 8)
		return false;
	
	for (var i=0; i<cep.length; i++) 
	{
		temp = "" + cep.substring(i, i+1);		
		if (valid.indexOf(temp) == "-1") ok = "no";
	}
	if (ok == "no") 
		return false;

	return true;
}

function validaNumero(field) 
{
	var valid = "0123456789"
	var ok = "yes";
	var temp;
	
	for (var i=0; i<field.value.length; i++) 
	{
		temp = "" + field.value.substring(i, i+1);		
		if (valid.indexOf(temp) == "-1") ok = "no";
	}
	if (ok == "no") 
	{
		alert("Válido somente números");
		field.focus();
		field.select();
	}
}

function validaemail(email)
{
	p=email.indexOf("@");
	z=email.indexOf(".");
	if ((p<1 || p==(email.length-1)) || (z<1 || z==(email.length-1))) 
		return false;
	return true;
}

function ChecaCNPJ(strCGC) {
	var NewCGC = "";
	var DV = "";
	var DVCGC;
	var s1 = 0;
	var s2 = 0;
	var NewDV;
	
	//Verifica tamanho do CGC
	if ((strCGC.length != 14) || (isNaN(strCGC)))
	{
		return false;
	}
	
	//Calcula os dígitos verificadores
	//Guarda os 12 primeiros digitos
	DVCGC = strCGC.substring(0,12);
	
	//calcula o primeiro digito verificador
	for (i=1;i<=4;i++)
		s1 = s1 + (parseInt(DVCGC.charAt(i-1))*(6-i));

	for (i=5;i<=12;i++)
		s1 = s1 + (parseInt(DVCGC.charAt(i-1))*(14-i));
	
	r1 = s1 % 11;
	if (r1 < 2)
		dv1 = 0;
	else 
		dv1 = 11 - r1;
	
	//calcula o segundo digito verificador
	s2 = dv1 * 2;
	
	for (i=1;i<=5;i++)
		s2 = s2 + (parseInt(DVCGC.charAt(i-1))*(7-i));
	for (i=6;i<=12;i++)
		s2 = s2 + (parseInt(DVCGC.charAt(i-1))*(15-i));
	r2 = s2 % 11;
	if (r2 < 2)
		dv2 = 0;
	else
		dv2 = 11 - r2;
	
	//junta os digitos verificadores
	DV = DV + dv1 + dv2;
	//guarda os digitos verificadores do CGC digitado (últimas duas posições no string)
	NewDV = strCGC.substring(12,14)
	if (NewDV == DV) //se o DV calculado for igual ao digitado, retorna true
		return true;
	else
	{
		return false;
	}
}

function ChecaCPF(strCPF) {
x = 0;
soma = 0;
dig1 = 0;
dig2 = 0;
texto = "";
StrCPF1="";
len = StrCPF.length;
x = len -1;
for (var i=0; i <= len - 3; i++)
{
y = StrCPF.substring(i,i+1);
soma = soma + ( y * x);
x = x - 1;
texto = texto + y;
}
dig1 = 11 - (soma % 11);
if (dig1 == 10) dig1=0 ;
if (dig1 == 11) dig1=0 ;
StrCPF1 = StrCPF.substring(0,len - 2) + dig1 ;
x = 11; soma=0;
for (var i=0; i <= len - 2; i++)
{
soma = soma + (StrCPF1.substring(i,i+1) * x);
x = x - 1;
}
dig2= 11 - (soma % 11);
if (dig2 == 10) dig2=0;
if (dig2 == 11) dig2=0;
if ((dig1 + "" + dig2) == StrCPF.substring(len,len-2))
{
// alert ("Número do CPF Válido !");
return true;
}
return false;
}

function txtBoxFormat(objForm, strField, sMask, evtKeyPress) {
     var i, nCount, sValue, fldLen, mskLen,bolMask, sCod, nTecla;

     if(document.all) { // Internet Explorer
  		nTecla = evtKeyPress.keyCode; 
		}
	 else { // Nestcape
  		nTecla = evtKeyPress.which;
 	}
     

     sValue = objForm[strField].value;

     // Limpa todos os caracteres de formatação que
     // já estiverem no campo.
     sValue = sValue.toString().replace( "-", "" );
     sValue = sValue.toString().replace( "-", "" );
     sValue = sValue.toString().replace( ".", "" );
     sValue = sValue.toString().replace( ".", "" );
     sValue = sValue.toString().replace( "/", "" );
     sValue = sValue.toString().replace( "/", "" );
     sValue = sValue.toString().replace( "(", "" );
     sValue = sValue.toString().replace( "(", "" );
     sValue = sValue.toString().replace( ")", "" );
     sValue = sValue.toString().replace( ")", "" );
     sValue = sValue.toString().replace( " ", "" );
     sValue = sValue.toString().replace( " ", "" );
     fldLen = sValue.length;
     mskLen = sMask.length;

     i = 0;
     nCount = 0;
     sCod = "";
     mskLen = fldLen;

     while (i <= mskLen) {
       bolMask = ((sMask.charAt(i) == "-") || (sMask.charAt(i) == ".") || (sMask.charAt(i) == "/"))
       bolMask = bolMask || ((sMask.charAt(i) == "(") || (sMask.charAt(i) == ")") || (sMask.charAt(i) == " "))

       if (bolMask) {
         sCod += sMask.charAt(i);
         mskLen++; }
       else {
         sCod += sValue.charAt(nCount);
         nCount++;
       }

       i++;
     }

     objForm[strField].value = sCod;
	
	 if((nTecla == 8)) {
		 return true;
		
	 }
	 else if((nTecla != 8)) { 
			return ((nTecla > 47) && (nTecla < 58));
		
	}
}

