function $(id_obj) {
	return document.getElementById(id_obj);
}

function $N(name) {
	return document.getElementsByName(name);
}

function Trim(str){
	return str.replace(/^\s+|\s+$/g,"");
}

function debug(texto) {
	$("debug").style.display = "block";
	$("debug").value = texto;
}

/*============================================================================================
--| Adiciona opção em um <SELECT>
=============================================================================================*/
function AddOption(objCombo, strValue, strDescricao, defaultSelected, selected) {
    var Nova_Opcao = new Option(strDescricao, strValue, defaultSelected, selected);
    $(objCombo).options[$(objCombo).length] = Nova_Opcao;
}

/*============================================================================================
--| Adiciona opção em um <SELECT>
=============================================================================================*/
function DelOption(objCombo, strIndice){
    $(objCombo).options.remove(strIndice);
}

/*============================================================================================
--| Verifica se a tecla ENTER foi pressionada
=============================================================================================*/
function enter(evt) {
	var r = false;	
	var key_code = evt.keyCode ? evt.keyCode : evt.charCode ? evt.charCode : evt.which ? evt.which : void 0;	
	if (key_code == 13) {
		r = true;
	}
	return r;
}

/*============================================================================================
--| Exibe a div sobre os elementos <select> com o auxilio de um iframe
=============================================================================================*/
function exibeDiv(id_div, sim) {

	var div = $(id_div);
	var iframe = $("ifrm_div");
	if (sim) {
		div.style.display = "block";
		iframe.style.width = div.offsetWidth;
		iframe.style.height = div.offsetHeight;
		iframe.style.top = div.style.top;
		iframe.style.left = div.style.left;
		iframe.style.zIndex = div.style.zIndex - 1;
		iframe.style.display = "block";
	} else {
		div.style.display = "none";
		iframe.style.display = "none";
	}
}

/*============================================================================================
--| Exibe a div do menu sobre os elementos <select> com o auxilio de um iframe
=============================================================================================*/
function ExibeMenu(numero, sim) {

	var div = $('div_submenu'+numero);
	var iframe = $("iframe_menu");
	
	if (sim) {
		// Esconde todos os menus
		for (i = 1; i <= 6; i++) {
			if (i != numero) {
				$('div_submenu'+i).style.display = "none";
			}
		}
		
		// Não exibe o menu 6 (Retirar caso o menu seja adicionado)
		if (numero == 6) {
			iframe.style.display = "none";
			return; 
		}
		
		//new Effect.Appear($(div),{duration:0.5});
		$(div).style.display = "block";

		//div.style.display = "block";
		iframe.style.width = div.offsetWidth;
		iframe.style.height = div.offsetHeight;
		iframe.style.top = div.offsetTop;
		iframe.style.left = div.offsetLeft;
		iframe.style.zIndex = div.style.zIndex - 1;
		iframe.style.display = "block";
	} else {
		//new Effect.Fade($(div),{duration:0.5});
		div.style.display = "none";
		iframe.style.display = "none";
	}
}


//--| Carrega a pagina do 
function Menu(pagina, link, indice) {	
	var div = $('div_info_pagina');
	ExibeAguarde('Aguarde');
	if (indice != 0) { // // demais paginas		
		var txtmenu = $('a_menu_'+indice).innerHTML;
		var txtsubmenu = link.innerHTML;
		div.innerHTML = txtmenu + ' - ' + txtsubmenu;
		div.style.display = 'block';		
	} else { // home
		div.style.display = 'none';
	}			
	ajaxIncludeDiv(pagina, 'div_conteudo');
}


//-------------------------------------------------------------------------------------------------------------------
// muda a cor dos inputs quando recebe o focus
// OBS.: Caso algum campo utilize os eventos abaixo não se deve utilizar o efeito
//-------------------------------------------------------------------------------------------------------------------
function efeitoCss() {
	
	// Botões e Input's
	var inputs = document.getElementsByTagName("input");	
	for (i = 0; i < inputs.length; i++) {
		if (inputs[i].type == "button" || inputs[i].type == "reset") {
			inputs[i].onmouseover = function() {this.className='botao_over'};
			inputs[i].onfocus = function() {this.className='botao_over'};
			inputs[i].onmouseout = function() {this.className='botao'};			
			inputs[i].onblur = function() {this.className='botao'};
		} else if (inputs[i].type == "text" || inputs[i].type == "password") {
			if (inputs[i].className != "head") { // style criado para campos headonly
				inputs[i].onfocus = function() {this.className='focus'};
				inputs[i].onblur = function() {this.className=''};
			}
		}
	}
	
	// Textarea's
	var inputs = document.getElementsByTagName("textarea");
	for (i = 0; i < inputs.length; i++) {
		inputs[i].onfocus=function() {this.className='focus'};
		inputs[i].onblur=function() {this.className=''};
	}
}

/*--------------------------------------------------------------------------------------------*/
function ValidaData(Campo, Detalhe)
{
	var sCampo = Campo.value
	
	var Dia = sCampo.substring(0,2)
	var Mes = sCampo.substring(3,5)
	var Ano = sCampo.substring(6,10)

	var bReturn = true
		
	if (sCampo != "")
	{
		if (sCampo.length > 10 || sCampo.length < 10)
		{
			window.alert("A " + Detalhe + " esta invalida.\n\nInforme corretamente com 10 (dez) dígitos.\nFormato DD/MM/AAAA")
			Campo.value = ""
			Campo.focus()
			bReturn = false
		}
		else
		if (sCampo.charAt(2) != "/" || sCampo.charAt(5) != "/")
		{
			window.alert("A " + Detalhe + " esta invalida.\n\nInforme corretamente no formato DD/MM/AAAA")
			Campo.value = ""
			Campo.focus()
			bReturn = false
		}
		else 
		{
			if (Dia < "01" || Dia > "31")
			{
				window.alert("A " + Detalhe + " esta invalida.\n\nInforme corretamente no formato DD/MM/AAAA")
				Campo.value = ""
				Campo.focus()
				bReturn = false
			}
			else
			if (Mes < "01" || Mes > "12")
			{
				window.alert("A " + Detalhe + " esta invalida.\n\nInforme corretamente no formato DD/MM/AAAA")
				Campo.value = ""
				Campo.focus()
				bReturn = false
			}
			else
			if (Ano < "1900" || Ano > "9999")
			{
				window.alert("A " + Detalhe + " esta invalida.\n\nInforme corretamente no formato DD/MM/AAAA\n\nANO tem que ser maior que 1900!")
				Campo.value = ""
				Campo.focus()
				bReturn = false
			}
			else
			if ((Mes == "04" || Mes == "06" || Mes == "09" || Mes == "11") && (Dia > "30"))
			{
				window.alert("A " + Detalhe + " esta invalida.\n\nInforme corretamente.")
				Campo.value = ""
				Campo.focus()
				bReturn = false
			}
			else
			if (Mes == "02" && Dia > "29")
			{
				window.alert("A " + Detalhe + " esta invalida.\n\nInforme corretamente.")
				Campo.value = ""
				Campo.focus()
				bReturn = false
			}
			else
			{	
				var Bis = 0
				if (Ano |= "0001")
				{
					Bis = Ano / 4
				}
				if ((Bis |= 0) && (Mes == "02") && (Dia > "28"))
				{
					window.alert("A " + Detalhe + " esta invalida.\n\nInforme corretamente.")
					Campo.value = ""
					Campo.focus()
					bReturn = false
				}
			}
		}
	}
	return bReturn
}

/*--------------------------------------------------------------------------------------------*/
function DigitaNumero(campo) {

    var data = new String( campo.value );
    var wData = '';
	var cont = 0;
	
	for (i=0; i< data.length ; i++) {
	  if ( data.charAt(i) >= '0' && data.charAt(i) <= '9' )	{
			  	wData += data.charAt(i);
  	  }
	  else
	  		cont++;
    }
	
	if (cont > 0 )
	{  
    	// Atualiza o campo 
    	campo.value = wData;
	}

}

/*--------------------------------------------------------------------------------------------*/
function DigitaValor(campo) {

    var data = new String( campo.value );
    var wData = '';
	var cont_neg = 0;
	var cont = 0;
	
	for (i=0; i< data.length ; i++) {
	  if (i == 0) {	  
		  if ( data.charAt(i) == '-' )	{
			  	wData += data.charAt(i);
				cont_neg ++;
	  	  }
		  else {
		  	if ( data.charAt(i) >= '0' && data.charAt(i) <= '9' ){
				wData += data.charAt(i);
			}
			else {
				if ( data.charAt(i) == '.'  || data.charAt(i) == ',' ) {
					wData += '0,';
				}
				cont++;
			}
		  }
	  }
	  else {
		  if ( data.charAt(i) >= '0' && data.charAt(i) <= '9' )	{
				  	wData += data.charAt(i);
	  	  }
		  else {
	  		if ( data.charAt(i) == ',' )	
			{
				if ( wData.indexOf(',') == -1 )
				{
				  	wData += data.charAt(i);
				}
				else
				{
					cont ++;
				}
			}	  
			else if ( data.charAt(i) == '.' )
			{
				if ( wData.indexOf(',') == -1 )
				{
				  	wData += ',';
					cont ++;
				}
				else
				{
					cont ++;
				}
			}

			else
				cont ++;	 
		  }	
	  }
	}

	if ( cont > 0 ) 
	{	  
    	// Atualiza o campo 
	    campo.value = wData;
	}

}

/*--------------------------------------------------------------------------------------------*/
function DigitaData(campo) {
    var data = new String( campo.value );
    var wData = '';
	var cont = 0;
	
    for (i=0; i< data.length ; i++) {

	  if (i <= 1) {
		  if ( data.charAt(i) >= '0' && data.charAt(i) <= '9' )	{
			  	wData += data.charAt(i);
	  	  }
		  else
		  {
		  		cont++;
		  }
	  }
	  
	  if (i == 2) {	  
		  if ( data.charAt(i) == '/' )	{
			  	wData += data.charAt(i);
	  	  }	  
		  else {
			  if ( data.charAt(i) >= '0' && data.charAt(i) <= '9' )	{
			  		wData += '/';
				  	wData += data.charAt(i);
					cont ++;
			  }
			  else {
			  		wData += '/';			  
					cont ++;
			  }
	  	  }
	  }

	  if (i > 2 && i <= 4) {
		  if ( data.charAt(i) >= '0' && data.charAt(i) <= '9' )	{
			  	wData += data.charAt(i);
	  	  }
		  else
		  {
		  		cont++;
		  }
	  }	  
	  
	  if (i == 5) {	  
		  if ( data.charAt(i) == '/' )	{
			  	wData += data.charAt(i);
	  	  }	  
		  else {
			  if ( data.charAt(i) >= '0' && data.charAt(i) <= '9' )	{
			  		wData += '/';
				  	wData += data.charAt(i);
					cont++;
			  }
			  else {
			  		wData += '/';
					cont++;
			  }
	  	  }
	  }

	  if (i > 5 && i <= 9) {
		  if ( data.charAt(i) >= '0' && data.charAt(i) <= '9' )	{
			  	wData += data.charAt(i);
	  	  }
		  else
		  {
		  		cont++;
		  }
	  }
	  
	  if (i > 9 )
	  {
	  		cont++;
	  }	  	  

    }
	
	if ( cont > 0 )
	{
	    // Atualiza o campo 
    	campo.value = wData;
	}
}

/*--------------------------------------------------------------------------------------------*/
function DigitaCPF(campo) {
    var CPF = new String(campo.value);
    var wCPF = '';
	var cont = 0;
	
    for (i=0; i< CPF.length ; i++) {

	  if (i <= 2) {
		  if ( CPF.charAt(i) >= '0' && CPF.charAt(i) <= '9' )	{
			  	wCPF += CPF.charAt(i);
	  	  }
		  else
		  {
		  		cont++;
		  }
	  }
	  
	  if (i == 3) {	  
		  if ( CPF.charAt(i) == '.' )	{
			  	wCPF += CPF.charAt(i);
	  	  }	  
		  else {
			  if ( CPF.charAt(i) >= '0' && CPF.charAt(i) <= '9' )	{
			  		wCPF += '.';
				  	wCPF += CPF.charAt(i);
					cont ++;
			  }
			  else {
			  		wCPF += '.';			  
					cont ++;
			  }
	  	  }
	  }

	  if (i > 3 && i <= 6) {
		  if ( CPF.charAt(i) >= '0' && CPF.charAt(i) <= '9' )	{
			  	wCPF += CPF.charAt(i);
	  	  }
		  else
		  {
		  		cont++;
		  }
	  }	  
	  
	  if (i == 7) {	  
		  if ( CPF.charAt(i) == '.' )	{
			  	wCPF += CPF.charAt(i);
	  	  }	  
		  else {
			  if ( CPF.charAt(i) >= '0' && CPF.charAt(i) <= '9' )	{
			  		wCPF += '.';
				  	wCPF += CPF.charAt(i);
					cont++;
			  }
			  else {
			  		wCPF += '.';
					cont++;
			  }
	  	  }
	  }

	  if (i > 7 && i <= 10) {
		  if ( CPF.charAt(i) >= '0' && CPF.charAt(i) <= '9' )	{
			  	wCPF += CPF.charAt(i);
	  	  }
		  else
		  {
		  		cont++;
		  }
	  }
	  
	  if (i == 11) {	  
		  if ( CPF.charAt(i) == '-' )	{
			  	wCPF += CPF.charAt(i);
	  	  }	  
		  else {
			  if ( CPF.charAt(i) >= '0' && CPF.charAt(i) <= '9' )	{
			  		wCPF += '-';
				  	wCPF += CPF.charAt(i);
					cont++;
			  }
			  else {
			  		wCPF += '-';
					cont++;
			  }
	  	  }
	  }
	  
	  if (i > 11) {
		  if ( CPF.charAt(i) >= '0' && CPF.charAt(i) <= '9' )	{
			  	wCPF += CPF.charAt(i);
	  	  }
		  else
		  {
		  		cont++;
		  }
	  }
	  
    }
	
	if ( cont > 0 )
	{
	    // Atualiza o campo 
    	campo.value = wCPF;
	}
}	

/*--------------------------------------------------------------------------------------------*/
function ValidaCPF(campo_cpf) {

   var campo = campo_cpf.value;
   var digito = campo.toString();


   if (campo_cpf.value == '000.000.000-00')
   {
      alert("CPF inválido.");
      campo_cpf.focus();
      return(false)
   }	

   if (campo_cpf.value == '111.111.111-11')
   {
      alert("CPF inválido.");
      campo_cpf.focus();
      return(false)
   }	

   if (campo_cpf.value == '222.222.222-22')
   {
      alert("CPF inválido.");
      campo_cpf.focus();
      return(false)
   }	

   if (campo_cpf.value == '333.333.333-33')
   {
      alert("CPF inválido.");
      campo_cpf.focus();
      return(false)
   }	

   if (campo_cpf.value == '444.444.444-44')
   {
      alert("CPF inválido.");
      campo_cpf.focus();
      return(false)
   }	

   if (campo_cpf.value == '555.555.555-55')
   {
      alert("CPF inválido.");
      campo_cpf.focus();
      return(false)
   }	

   if (campo_cpf.value == '666.666.666-66')
   {
      alert("CPF inválido.");
      campo_cpf.focus();
      return(false)
   }	

   if (campo_cpf.value == '777.777.777-777')
   {
      alert("CPF inválido.");
      campo_cpf.focus();
      return(false)
   }	

   if (campo_cpf.value == '888.888.888-88')
   {
      alert("CPF inválido.");
      campo_cpf.focus();
      return(false)
   }	

   if (campo_cpf.value == '999.999.999-99')
   {
      alert("CPF inválido.");
      campo_cpf.focus();
      return(false)
   }	
	

   // DIGITO 1
   var soma1 = 0
       soma1 = soma1 + 10 * digito.charAt(0);
       soma1 = soma1 +  9 * digito.charAt(1);
       soma1 = soma1 +  8 * digito.charAt(2);
       soma1 = soma1 +  7 * digito.charAt(4);
       soma1 = soma1 +  6 * digito.charAt(5);
       soma1 = soma1 +  5 * digito.charAt(6);
       soma1 = soma1 +  4 * digito.charAt(8);
       soma1 = soma1 +  3 * digito.charAt(9);
       soma1 = soma1 +  2 * digito.charAt(10);
   
   var divisao1    = soma1 / 11
   
   var multiplica1 = parseInt(divisao1,10) * 11
   
   var resto1      = soma1 - multiplica1
   
   if (resto1 <= 1) 
   {
      var digi1 = 0
   } 
   else 
   {
      var digi1 = 11 - resto1
   }
 

   // DIGITO 2
   var soma2 = 0
       soma2 = soma2 + 11 * digito.charAt(0);
       soma2 = soma2 + 10 * digito.charAt(1);
       soma2 = soma2 +  9 * digito.charAt(2);
       soma2 = soma2 +  8 * digito.charAt(4);
       soma2 = soma2 +  7 * digito.charAt(5);
       soma2 = soma2 +  6 * digito.charAt(6);
       soma2 = soma2 +  5 * digito.charAt(8);
       soma2 = soma2 +  4 * digito.charAt(9);
       soma2 = soma2 +  3 * digito.charAt(10);
       soma2 = soma2 +  2 * digi1       

   var divisao2    = soma2 / 11

   var multiplica2 = parseInt(divisao2,10) * 11

   var resto2      = soma2 - multiplica2

   if (resto2 <= 1) 
   {
      var digi2 = 0
   } 
   else 
   {
      var digi2 = 11 - resto2
   }
   
   if (digito.charAt(12) == digi1.toString() & digito.charAt(13) == digi2.toString()) 
   {
      return(true)
   } 
   else 
   {
      alert("CPF inválido.");
      campo_cpf.focus();
      return(false)
   }
}

/*--------------------------------------------------------------------------------------------*/
function DigitaCNPJ(campo) {
    var CNPJ = new String(campo.value);
    var wCNPJ = '';
	var cont = 0;
	
    for (i=0; i< CNPJ.length ; i++) {

	  if (i <= 1) {
		  if ( CNPJ.charAt(i) >= '0' && CNPJ.charAt(i) <= '9' )	{
			  	wCNPJ += CNPJ.charAt(i);
	  	  }
		  else
		  {
		  		cont++;
		  }
	  }
	  
	  if (i == 2) {	  
		  if ( CNPJ.charAt(i) == '.' )	{
			  	wCNPJ += CNPJ.charAt(i);
	  	  }	  
		  else {
			  if ( CNPJ.charAt(i) >= '0' && CNPJ.charAt(i) <= '9' )	{
			  		wCNPJ += '.';
				  	wCNPJ += CNPJ.charAt(i);
					cont ++;
			  }
			  else {
			  		wCNPJ += '.';			  
					cont ++;
			  }
	  	  }
	  }

	  if (i > 2 && i <= 5) {
		  if ( CNPJ.charAt(i) >= '0' && CNPJ.charAt(i) <= '9' )	{
			  	wCNPJ += CNPJ.charAt(i);
	  	  }
		  else
		  {
		  		cont++;
		  }
	  }	  
	  
	  if (i == 6) {	  
		  if ( CNPJ.charAt(i) == '.' )	{
			  	wCNPJ += CNPJ.charAt(i);
	  	  }	  
		  else {
			  if ( CNPJ.charAt(i) >= '0' && CNPJ.charAt(i) <= '9' )	{
			  		wCNPJ += '.';
				  	wCNPJ += CNPJ.charAt(i);
					cont++;
			  }
			  else {
			  		wCNPJ += '.';
					cont++;
			  }
	  	  }
	  }

	  if (i > 6 && i <= 9) {
		  if ( CNPJ.charAt(i) >= '0' && CNPJ.charAt(i) <= '9' )	{
			  	wCNPJ += CNPJ.charAt(i);
	  	  }
		  else
		  {
		  		cont++;
		  }
	  }
	  
	  if (i == 10) {	  
		  if ( CNPJ.charAt(i) == '/' )	{
			  	wCNPJ += CNPJ.charAt(i);
	  	  }	  
		  else {
			  if ( CNPJ.charAt(i) >= '0' && CNPJ.charAt(i) <= '9' )	{
			  		wCNPJ += '/';
				  	wCNPJ += CNPJ.charAt(i);
					cont++;
			  }
			  else {
			  		wCNPJ += '/';
					cont++;
			  }
	  	  }
	  }
	  
	  if (i > 10 && i <= 14) {
		  if ( CNPJ.charAt(i) >= '0' && CNPJ.charAt(i) <= '9' )	{
			  	wCNPJ += CNPJ.charAt(i);
	  	  }
		  else
		  {
		  		cont++;
		  }
	  }
	  
	  if (i == 15) {	  
		  if ( CNPJ.charAt(i) == '-' )	{
			  	wCNPJ += CNPJ.charAt(i);
	  	  }	  
		  else {
			  if ( CNPJ.charAt(i) >= '0' && CNPJ.charAt(i) <= '9' )	{
			  		wCNPJ += '-';
				  	wCNPJ += CNPJ.charAt(i);
					cont++;
			  }
			  else {
			  		wCNPJ += '-';
					cont++;
			  }
	  	  }
	  }
	  
	  if (i > 15) {
		  if ( CNPJ.charAt(i) >= '0' && CNPJ.charAt(i) <= '9' )	{
			  	wCNPJ += CNPJ.charAt(i);
	  	  }
		  else
		  {
		  		cont++;
		  }
	  }  	  

    }
	
	if ( cont > 0 )
	{
	    // Atualiza o campo 
    	campo.value = wCNPJ;
	}
}

/*--------------------------------------------------------------------------------------------*/
function ValidaCNPJ(campo_cnpj) {
   
   var campo = campo_cnpj.value;
   var digito = campo.toString();
 

   if (campo_cnpj.value == '00.000.000/0000-00')
   {
	      alert("CNPJ inválido.");
	      campo_cnpj.focus();
	      return(false)
   }
   else
   {

	   // DIGITO 1
	   var soma1 = 0
	       soma1 = soma1 + 5 * digito.charAt(0)
	       soma1 = soma1 + 4 * digito.charAt(1)
	       soma1 = soma1 + 3 * digito.charAt(3)
	       soma1 = soma1 + 2 * digito.charAt(4)
	       soma1 = soma1 + 9 * digito.charAt(5)
	       soma1 = soma1 + 8 * digito.charAt(7)
	       soma1 = soma1 + 7 * digito.charAt(8)
	       soma1 = soma1 + 6 * digito.charAt(9)
	       soma1 = soma1 + 5 * digito.charAt(11)
	       soma1 = soma1 + 4 * digito.charAt(12)
	       soma1 = soma1 + 3 * digito.charAt(13)
	       soma1 = soma1 + 2 * digito.charAt(14)
   
	   var divisao1    = soma1 / 11
	   
	   var multiplica1 = parseInt(divisao1,10) * 11
   
	   var resto1      = soma1 - multiplica1
   
	   if (resto1 <= 1) 
	   {
	      var digi1 = 0
	   }
	   else 
	   {
	      var digi1 = 11 - resto1
	   }

	   // DIGITO 2
	   var soma2 = 0
	       soma2 = soma2 + 6 * digito.charAt(0)
	       soma2 = soma2 + 5 * digito.charAt(1)
	       soma2 = soma2 + 4 * digito.charAt(3)
	       soma2 = soma2 + 3 * digito.charAt(4)
	       soma2 = soma2 + 2 * digito.charAt(5)
	       soma2 = soma2 + 9 * digito.charAt(7)
	       soma2 = soma2 + 8 * digito.charAt(8)
	       soma2 = soma2 + 7 * digito.charAt(9)
	       soma2 = soma2 + 6 * digito.charAt(11)
	       soma2 = soma2 + 5 * digito.charAt(12)
	       soma2 = soma2 + 4 * digito.charAt(13)
	       soma2 = soma2 + 3 * digito.charAt(14)
	       soma2 = soma2 + 2 * digi1       
   
	   var divisao2    = soma2 / 11
   
	   var multiplica2 = parseInt(divisao2,10) * 11
   
	   var resto2      = soma2 - multiplica2
   
	   if (resto2 <= 1) 
	   {
	      var digi2 = 0
	   }
	   else 
	   {
	      var digi2 = 11 - resto2
	   }

	   if (digito.charAt(16) == digi1.toString() & digito.charAt(17) == digi2.toString())
	   {
	      return(true)
	   }
	   else 
	   {
	      alert("CNPJ inválido.");
	      campo_cnpj.focus();
	      return(false)
	   }

   }
}

/*============================================================================================*/
function DigitaFone(Campo)
{
	fone = Campo.value;
	tamanho = fone.length;
	
	if ( fone == '' )
	{		
		return;
	}
	
	for ( i = 0; i <= tamanho; i++ )
	{
		if ( i == 0 && fone.charAt(i) != "(" )
		{
			fone = "(" + fone;
		}
		if ( i == 3 && fone.charAt(i) != ")" )
		{
			fone = fone + ")";
		}
		/*
		if ( i == 4 && fone.charAt(i) != " " )
		{
			fone = " " + fone;
		}
		*/		
		if ( i == 8 && fone.charAt(i) != "." )
		{
			fone = fone + ".";
		}
	}

	Campo.value = fone;	
}

/*============================================================================================*/
function DigitaCEP(campo) {
    var CEP = new String(campo.value);
    var wCEP = '';
	var cont = 0;
	
    for (i=0; i< CEP.length ; i++) {

	  if (i <= 4) {
		  if ( CEP.charAt(i) >= '0' && CEP.charAt(i) <= '9' )	{
			  	wCEP += CEP.charAt(i);
	  	  }
		  else
		  {
		  		cont++;
		  }
	  }
	  
	  if (i == 5) {	  
		  if ( CEP.charAt(i) == '-' )	{
			  	wCEP += CEP.charAt(i);
	  	  }	  
		  else {
			  if ( CEP.charAt(i) >= '0' && CEP.charAt(i) <= '9' )	{
			  		wCEP += '-';
				  	wCEP += CEP.charAt(i);
					cont ++;
			  }
			  else {
			  		wCEP += '-';			  
					cont ++;
			  }
	  	  }
	  }

	  if (i > 5) {
		  if ( CEP.charAt(i) >= '0' && CEP.charAt(i) <= '9' )	{
			  	wCEP += CEP.charAt(i);
	  	  }
		  else
		  {
		  		cont++;
		  }
	  }  	  

    }
	
	if ( cont > 0 )
	{
	    // Atualiza o campo 
    	campo.value = wCEP;
	}
}

/*============================================================================================*/
function TelaCheia(pagina,janela) {
	
	var numWidth = 10;
	var nomeNavegador = navigator.appName;
	if (nomeNavegador == "Netscape") {
		numWidth = 0;
	}
	
	tela = window.open(pagina,janela,"type=fullWindow,directories=0,location=0,menubar=0,resizable=0,scrollbars=1,toolbar=0,left=0,top=0,width=" + (screen.availWidth - numWidth) + ",height=" + (screen.availHeight - 30));
}

/*============================================================================================
--| Retorna a posição X ou Y do mouse
=============================================================================================*/
function CoordenadaMouse(evt, coordenada) {
	var ie = ((navigator.userAgent.indexOf("MSIE")>-1)) ? true : false;
	var ns = ((navigator.userAgent.indexOf("Gecko")>-1)) ? true: false;
	var x;
	var y;
		
	if (ie) {
		x = (evt.clientX + document.documentElement.scrollLeft);
		y = (evt.clientY + document.documentElement.scrollTop);
	} else {
		x = evt.pageX;
		y = evt.pageY;
	}
	if (coordenada.toLowerCase() == "x") {
		return x;
	} else {
		return y;
	}
}

/*============================================================================================
--| Funções para exibir/ocultar uma mensagem de aguarde, informação, erro, etc.
=============================================================================================*/
var obj_aguarde = false;

function OcultaAguarde() {
	obj_aguarde = false;
	$('div_aguarde').style.display = "none";
}

function ExibeAguarde(mensagem) {
	obj_aguarde = true;
	$('div_aguarde').innerHTML = mensagem;
	$('div_aguarde').style.display = "block";
}

// Exibe o aguarde fixo na div
function AguardeMsg(mensagem) {
	return "<img src='imagem/aguarde2.gif' align='absmiddle' style='margin-left:5px;'>&nbsp; <b>"+mensagem +"</b>";
}

// Exibe apenas quando solicitado
function BoxAguarde(evt, exibe) {
	var x = 0;
	var y = 0;		
	if (obj_aguarde) {	
		if (!exibe) {
			$('div_aguarde').style.display = "none";
		} else {
			x = CoordenadaMouse(evt,"x");
			y = CoordenadaMouse(evt,"y");
			$('div_aguarde').style.left = (x)+'px';
			$('div_aguarde').style.top = (y+20)+'px';
			$('div_aguarde').style.display = "block";
		}
	}
}

// Exibe com o efeito a div flutuante
function ExibeDivFlutuante(div, id, sim) {
	var div = $(div+id);
	if (sim) {
		//new Effect.Appear(div);
		new Effect.SlideDown(div,{duration:0.5});
		css = "block";
	} else {
		//new Effect.Fade(div);
		new Effect.SlideUp(div,{duration:0.5});
	}
}

// Exibe com o efeito a div flutuante
function ExibeDivFlutuanteCentral(sim, largura, altura, pagina, evt) {

	var div_princ = $("div_conteudo");
	var div_float = $("div_flutuante_central");
	var div_conte = $("div_conteudo_central");
		
	if (sim) {
		$(div_conte).innerHTML = "";
		if (pagina != "") { 
			ajaxIncludeDiv(pagina,"div_conteudo_central"); // carrega a pagina dentro da div flutuante
		}
		$(div_princ).style.visibility = "hidden";
		$(div_float).style.width = largura+"px"; // define largura da div
		$(div_float).style.height = altura+"px"; // define altura da div
		$(div_float).style.top = CoordenadaMouse(evt,"y")-200+"px"; // Exibe a div na altura do mouse
		$(div_float).style.left = ((window.screen.width/2) - (largura/2))+"px"; // centraliza a div		
		new Effect.Grow(div_float, {duration:0.5});
	} else {
		//new Effect.Fold(div_float);
		new Effect.Shrink(div_float, {duration:0.5});
		$(div_princ).style.visibility = "visible";
	}
}

// completa com zeros a esquerda
function ZeroEsquerda(campo, qtd) {
	var n = campo.value;
	if (n != "") {
		if (n.length < qtd) {
			tam = qtd - n.length;
			for (i = 0; i < tam; i++) {
				n = "0"+n;
			}
			campo.value = n;
		}
	}
}

// Função para criação do campo de data no formulário
function Calendario(id_input, id_button) {
	Calendar.setup ({
		inputField: id_input, // ID of the input field
		ifFormat: "%d/%m/%Y", // the date format
		button: id_button // ID of the button
	});
}

// marca/desmarca todos os checkbox
function MarcaCheckboxs(name, sim) {
	var chks = $N(name);
	for (i = 0; i < chks.length; i++) {
		chks[i].checked = sim;
	}
}

// marca/desmarca todos os checkbox
function ToggleCheckboxs(name) {
	var chks = $N(name);
	var sim = true;
	for (i = 0; i < chks.length; i++) {
		if (i == 0) {sim = !chks[0].checked}
		chks[i].checked = sim;
	}
}

/*============================================================================================
--| Funções de data
=============================================================================================*/
// recebe um string no formato dd/mm/yyy e retorna no formato data
function StrToDate(str_data) {
	var dia = str_data.substring(0,2);
	var mes = parseInt(str_data.substring(3,5)) - 1;
	var ano = str_data.substring(6,10);
	var data = new Date(ano, mes, dia);
	return data;
}

// recebe uma data e retorna a string no formato dd/mm/yyy
function DateToStr(data) {
	var dia = data.getDate();
	var mes = data.getMonth() + 1;
	var ano = data.getYear();	
	if (dia <= 9) {dia = "0"+dia;}
	if (mes <= 9) {mes = "0"+mes;}	
	var str = dia+"/"+mes+"/"+ano;
	return str;
}

// Date.dateAdd() - adiciona um intervalo a data
function dateAddExtention(p_Interval, p_Number){ 
	var thing = new String();        
	p_Interval = p_Interval.toLowerCase();     
	if(isNaN(p_Number)) {
		throw "The second parameter must be a number. \n You passed: " + p_Number; 
		return false;
	} 

	p_Number = new Number(p_Number); 
	switch(p_Interval.toLowerCase()) {
		case "yyyy": { // year 
			this.setFullYear(this.getFullYear() + p_Number); 
			break; 
		} 
		case "q": { // quarter 
			this.setMonth(this.getMonth() + (p_Number*3)); 
			break; 
		} 
		case "m": { // month 
			this.setMonth(this.getMonth() + p_Number); 
			break; 
		} 
		case "y": // day of year 
		case "d": // day 
		case "w": { // weekday 
			this.setDate(this.getDate() + p_Number); 
			break; 
		} 
		case "ww": { // week of year 
			this.setDate(this.getDate() + (p_Number*7)); 
			break; 
		} 
		case "h": { // hour 
			this.setHours(this.getHours() + p_Number); 
			break; 
		} 
		case "n": { // minute 
			this.setMinutes(this.getMinutes() + p_Number); 
			break; 
		} 
		case "s": { // second 
			this.setSeconds(this.getSeconds() + p_Number); 
			break; 
		} 
		case "ms": { // second 
			this.setMilliseconds(this.getMilliseconds() + p_Number); 
			break; 
		} 
		default: {
			throw   "The first parameter must be a string from this list: \n" + 
			"yyyy, q, m, y, d, w, ww, h, n, s, or ms.  You passed: " + p_Interval; 
			return false; 
		} 
	} 
	return this; 
}
Date.prototype.dateAdd = dateAddExtention; 
