function jValidaData ( data , campo )
{
	// incializa a variavel	
	resultado = true ;
	// recebe os valores
	dia = ( data.substring( 0 , 2  )) ; 
    mes = ( data.substring( 3 , 5  )) ; 
	ano = ( data.substring( 6 , 10 )) ; 
	// verifica se foram digitados números
	if ( isNaN ( dia ) || isNaN ( mes ) || isNaN ( ano ))
    {
        // retorna erro
        return false;
	}
	// verifica se o mes é valido 
	if ( mes < 1 || mes > 12 )
    { 
		resultado = false; 
	} 
    // verifica fevereiro
    if (( dia < 1 || dia > 29 ) && ( mes == 2 ))
    {
		resultado = false ;
    }
    // verifica os meses com trinta dias
	else if (( dia < 1 || dia > 30 ) && ( mes == 4 || mes == 6 || mes == 9 || mes == 11 ))
    {
		resultado = false ;
    }
    // verifica os meses com trinta e um dias
    else if  (( dia < 1 || dia > 31 ) && ( mes == 1 || mes == 3 || mes == 5 || mes == 7 || mes == 8 || mes == 10 || mes == 12 ))
    {
    	resultado = false; 
    }		
	// verifica se é ano bissexto 
	if (( mes == 2 ) && ( dia > 28) && ( parseInt( ano / 4 ) != ano / 4 ))
    { 
        resultado = false; 
	}
    // verifica o resultado
    if (( resultado !== true ) && ( data != '' ))
    {
        // avisa o erro da data
        alert ( 'Atenção!\n\nA data digitada é inválida.' ) ;
        // esvazia
        document.getElementById( campo ).value = '' ;
        // seta o foco
        document.getElementById( campo ).focus () ;
    }
}


/////////////////////////////////////////////////////////////////////////////////////////////////
/**
* @author Maikel Finck projetos@logicadigital.com.br
* @copyright (c) 2006 Lógica Digital
* Descrição: Script para usuário digitar apenas números
*/

function jCampoNumerico ( x , y , evtKeyPress )
{
// Inicializa a variavel
var nTecla = 0;
// Verifica plataforma
if (document.all)
{
// Plataformas tipo IE
nTecla = evtKeyPress.keyCode ;
}
else
{
// Plataformas tipo NETSCAPE
nTecla = evtKeyPress.which ;
}
// Verifica tecla pressionada
if ((( nTecla > 47 ) && ( nTecla < 58 ))  // numerico (0123456789)
|| ( nTecla == 8   )   // backspace
|| ( nTecla == 127 )   // delete
|| ( nTecla == 0   )   // teclas nao definidas
//|| ( nTecla == 9   )   // tabulacao
|| ( nTecla == 13  )   // enter
//|| ( nTecla == 44  )   // , (vírgula)
//|| ( nTecla == 46  ))  // . (ponto)
)
{
// Digita a tecla pressionada
return true;
}
else
{
// Ignora a tecla pressionada
return false;
}
}

/////////////////////////////////////////////////////////////////////////////////////////////////	

/***********************************************************************
FUNÇÃO PRINCIPAL DA MASCARA
-------------------------------------------------------------------
Função: fnMascara
Dados de Entrada: objeto (nome do campo no formulário), evt (evento do campo), mask(O Formato de mascara que deseja)
Dados de Saída:
Processamento: Enquanto o usuario for digitando automaticamente ele ja 
vai colocando os pontos(se necessario), barras(se necessario), traço(se necessario) e entre outros.
Uso no formulário: onkeypress="return fnMascara(this, event,'#####-###');"
Lembrando que #####-### é o formato da mascara que você quer, no caso é a de CEP

Responsavél: Marcelo Abib Cardoso
Data: 17/08/2006
************************************************************************/
function fnMascara(objeto, evt, mask)
{ 
	var LetrasU = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
	var LetrasL = 'abcdefghijklmnopqrstuvwxyz';
	var Letras  = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';	
	var Numeros = '0123456789';
	var Fixos  = '().-:/ ';
	var Charset = " !\"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_/`abcdefghijklmnopqrstuvwxyz{|}~";

	evt = (evt) ? evt : (window.event) ? window.event : "";
	var value = objeto.value;
	if (evt) {
 	var ntecla = (evt.which) ? evt.which : evt.keyCode;
 	tecla = Charset.substr(ntecla - 32, 1);
 	if (ntecla < 32) return true;

 	var tamanho = value.length;
 	if (tamanho >= mask.length) return false;

 	var pos = mask.substr(tamanho,1);
 	while (Fixos.indexOf(pos) != -1)
	 	{
 	 		value += pos;
 	 		tamanho = value.length;
 	 		if (tamanho >= mask.length) return false;
 	 		pos = mask.substr(tamanho,1);
		}

 	switch (pos) 
		{
   			case '#' : if (Numeros.indexOf(tecla) == -1) return false; break;
   			case 'A' : if (LetrasU.indexOf(tecla) == -1) return false; break;
   			case 'a' : if (LetrasL.indexOf(tecla) == -1) return false; break;
   			case 'Z' : if (Letras.indexOf(tecla) == -1) return false; break;
   			case '*' : objeto.value = value; return true; break;
   			default : return false; break;
 		}
	}
	objeto.value = value;
	return true;
}
/////////////////////////////////////////////////////////////////////////////////////////////////

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

  if(window.event) { // Internet Explorer
	nTecla = evtKeyPress.keyCode; }
  else if(evtKeyPress.which) { // 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;

  if (nTecla != 8) { // backspace
	if (sMask.charAt(i-1) == "9") { // apenas números...
	  return ((nTecla > 47) && (nTecla < 58)); } // números de 0 a 9
	else { // qualquer caracter...

	
	  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;

	  return true;
	} }
  else {
	return true;
  }
}

/////////////////////////////////////////////////////////////////////////////////////////////////
/**
* @author Tiago Carvalho projetos@logicadigital.com.br
* @copyright (c) 2006 Lógica Digital
* Descrição: Script para comparar se dois campos são iguais
*/

function jVerificaCampos ( campo , campo_confirmacao , imagem_ok , imagem_erro , nome_campo)
{
	if ( campo.length > 0 && campo_confirmacao.length > 0)
	{
		if ( campo == campo_confirmacao )
		{
			document.getElementById(imagem_erro).style.display = 'none' ;
			document.getElementById(imagem_ok).style.display = '' ;
			document.getElementById(nome_campo).className = 'formularioinput';
		}
		else
		{
			document.getElementById(imagem_erro).style.display = '' ;
			document.getElementById(imagem_ok).style.display = 'none' ;
			document.getElementById(nome_campo).className = 'formularioinput_erro';
		}
	}
	else
	{
		document.getElementById(imagem_erro).style.display = 'none' ;
		document.getElementById(imagem_ok).style.display = 'none' ;
		document.getElementById(nome_campo).className = 'formularioinput';
	}
}
/////////////////////////////////////////////////////////////////////////////////////////////////
/**
* @author André Ferraro projetos@logicadigital.com.br
* @copyright (c) 2005 Lógica Digital
* Descrição: Script para validar se campo foi preenchido
*/

//valida o formulário trabalhe_conosco
function validaform_trabalhe_conosco()
{
	
		if (trabalhe_conosco.trab_nome.value == '' )
	{
		alert("Atenção! O campo NOME deve ser preenchido.");
		trabalhe_conosco.trab_nome.focus();
		return false;	
	}
	
	if (trabalhe_conosco.trab_rg.value == '' )
	{
		alert("Atenção! O campo RG deve ser preenchido.");
		trabalhe_conosco.trab_rg.focus();
		return false;	
	}

	if (trabalhe_conosco.trab_cpf.value == '' )
	{
		alert("Atenção! O campo CPF deve ser preenchido.");
		trabalhe_conosco.trab_cpf.focus();
		return false;	
	}

	if (trabalhe_conosco.trab_telefone.value == '' )
	{
		alert("Atenção! O campo Telefone deve ser preenchido.");
		trabalhe_conosco.trab_telefone.focus();
		return false;	
	}
}

//valida o formulário de Entre em Contato
function validaform_contato() {
  
  if(entre_contato.nome.value.length<=1)
  {
   alert("O campo Nome deve estar preenchido corretamente.");
   entre_contato.nome.focus();
   return false;
   }

    var str_email = entre_contato.email.value ;
    if (( str_email.search(/^\w+((-\w+)|(\.\w+))*\@\w+((\.|-)\w+)*\.\w+$/) == -1 ) || ( str_email == 'Email:' ))
	{
    	alert("O campo E-mail deve ser preenchido corretamente");
    	entre_contato.email.focus();
    	return false;
	}
    
   if(entre_contato.telefone.value.length<=1)
   {
    alert("O campo Telefone deve estar preenchido corretamente.");
	entre_contato.telefone.focus();
	return false;
	}
	
   /*if(entre_contato.onde_conheceu.value.length<=1)
   {
    alert("O campo Onde Conheceu o San Conrado deve estar preenchido corretamente.");
	entre_contato.onde_conheceu.focus();
	return false;
	}*/
   
   if(entre_contato.mensagem.value.length<=1)
   {
    alert("O campo Mensagem deve estar preenchido corretamente.");
	entre_contato.mensagem.focus();
	return false;
	}

	return true;		
}

//Valida Newsletter
  
function validaform_newsletter ()
{
    // recebe os valores dos objetos
    var str_nome  = newsletter.nome ;
    var str_email = newsletter.email ;
    
    // verifica se o nome esta correto
    if (( str_nome.value.length <= 1 ) || ( str_nome.value == "Nome:" ))
    {
        alert ( "O campo Nome deve estar preenchido corretamente." ) ;
        str_nome.focus () ;
        return false ;
    }
    
    // verifica se o email esta correto
    if (( str_email.value.search(/^\w+((-\w+)|(\.\w+))*\@\w+((\.|-)\w+)*\.\w+$/) == -1 ) || ( str_email.value == 'E-mail:' ))
	{
    	alert ( "O campo E-mail deve ser preenchido corretamente" ) ;
    	str_email.focus () ;
    	return false ;
	}
    
    // nenhum erro, envia
	return true;
}

//valida Área Restrita

function validaform_area_restrita ()
{
    // recebe os valores dos objetos
    var str_nome  = form_area_restrita.login ;
    var str_senha = form_area_restrita.senha ;
    
    // verifica se o nome esta correto
    if (( str_nome.value.length <= 1 ) || ( str_nome.value == "Login" ))
    {
        alert ( "O campo Login deve estar preenchido corretamente." ) ;
        str_nome.focus () ;
        return false ;
    }
    
    // verifica se a senha esta correto
    if (( str_senha.value.length <= 1 ) || ( str_senha.value == "Senha" ))
    {
        alert ( "O campo Senha deve estar preenchido corretamente." ) ;
        str_senha.focus () ;
        return false ;
    }
    
    
    // nenhum erro, envia
	return true;
}


// Valida Formulario NewsLetter
function fValidaFormNews(form)
{
	if (form.nome.value == '' )
	{
		alert("Atenção!\nO campo NOME deve ser preenchido.");
		form.nome.focus();
		return false;	
	}
	if (form.email.value.search(/^\w+((-\w+)|(\.\w+))*\@\w+((\.|-)\w+)*\.\w+$/) == -1)
	{
		alert("Atenção!\nO campo E-MAIL deve ser preenchido corretamente.");
		form.email.value = "" ;
		form.email.focus();
		return false;
	}
}

//Limpando Campo do Formulário ("E-mail:" & "Nome:")
function fLimpaCampo(campo,valor)
{
	if (valor == "Nome:" || valor == "E-mail:" ) 
	{
		eval(campo).value = "" ;
	}
}

// Abre Pop-up
function AbrePopUp(url, titulo, largura, altura, scrollbar) {
	var info = window.open(url ,titulo ,'width=' + largura + ', height=' + altura +', scrollbars=' + scrollbar + ', toolbar=no, location=no, status=yes, menubar=no, resizable=no, left=10, top=10');
}

//Função Para exibir Menu "ATUACAO"
function mostra(id, status) 
{
	if (status == 0 ) {
		document.getElementById('submenu').style.visibility = "hidden";
	} else {
		document.getElementById('submenu').style.visibility = "visible"
	}
}

//Função Para exibir Menu "CONTATOS"
function mostra2(id, status) 
{
	if (status == 0 ) {
		document.getElementById('submenu2').style.visibility = "hidden";
	} else {
		document.getElementById('submenu2').style.visibility = "visible"
	}
}


// Função de Máscara de Campos
function FormatMask(objForm, strField, sMask, evtKeyPress) {
  var i, nCount, sValue, fldLen, mskLen,bolMask, sCod, nTecla;

  if(window.event) { // Internet Explorer
    nTecla = evtKeyPress.keyCode; }
  else if(evtKeyPress.which) { // 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;

  if (nTecla != 8) { // backspace
    if (sMask.charAt(i-1) == "9") { // apenas números...
      return ((nTecla > 47) && (nTecla < 58)); } // números de 0 a 9
    else { // qualquer caracter...


  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;

      return true;
    } }
  else {
    return true;
  }
}

// Motra campo qual deficiencia
function mostraDef (valor) {
 if ( valor == 'S' ) {
  document.getElementById("qual").style.display = "block";
 } else {
  document.getElementById("qual").style.display = "none";
 }
}

// Abre Pop-up
function AbrePopUp(url, titulo, largura, altura, scrollbar) {
	var info = window.open(url ,titulo ,'width=' + largura + ', height=' + altura +', scrollbars=' + scrollbar + ', toolbar=no, location=no, status=yes, menubar=no, resizable=no, left=10, top=10');
	info.focus();
}

//Validação de newsletter
function fnValidaNews(form,evento)
{
	if (form.nome.value == "")
	{
		alert("Atenção!\nO campo NOME deve ser preenchido.");
		form.nome.focus();
		return false;	
	}
	
	if (form.email.value.search(/^\w+((-\w+)|(\.\w+))*\@\w+((\.|-)\w+)*\.\w+$/) == -1)
	{
		alert("Atenção!\nO campo E-MAIL deve ser preenchido corretamente.");
		form.email.focus();
		return false;
	}
}



function validaform_esqueci_senha(form){
	if(form.login.value.length<=1)
	{
	alert("O campo LOGIN deve estar preenchido corretamente.");
	form.login.focus();
	return false;
	}

	var str_email = form.email.value ;
	if (( str_email.search(/^\w+((-\w+)|(\.\w+))*\@\w+((\.|-)\w+)*\.\w+$/) == -1 ) || ( str_email == 'Email:' ))
	{
	alert("O campo E-MAIL deve ser preenchido corretamente");
	form.email.focus();
	return false;
	}
}


function fVerificaCPF(campo) {
	var CPF = campo.value; // Recebe o valor digitado no campo
	CPF = CPF.replace("-", "");
	CPF = CPF.replace(".", "");
	CPF = CPF.replace(".", "");
	
	if( (CPF == '11111111111') || (CPF == '22222222222') || (CPF == '33333333333') || (CPF == '44444444444') ||
  		(CPF == '55555555555') || (CPF == '66666666666') || (CPF == '77777777777') || (CPF == '88888888888') ||
   		(CPF == '99999999999') || (CPF == '00000000000') )
	{
		  document.getElementById('cpf_erro').style.display = '';
		  document.getElementById('cpf_ok').style.display = 'none';
		  document.getElementById('cpf').className = 'formularioinput_erro';
		  return false;				  
	}
	else
	{
		
		// Aqui começa a checagem do CPF
		var posicao, i, soma, dv, dv_informado;
		var digito = new Array(10);
		dv_informado = CPF.substr(9, 2); // Retira os dois últimos dígitos do número informado
		
		// Desemembra o número do CPF na array DIGITO
		for (i=0; i<=8; i++) {
		  digito[i] = CPF.substr( i, 1);
		}
		
		// Calcula o valor do 10º dígito da verificação
		posicao = 10;
		soma = 0;
		   for (i=0; i<=8; i++) {
			  soma = soma + digito[i] * posicao;
			  posicao = posicao - 1;
		   }
		digito[9] = soma % 11;
		   if (digito[9] < 2) {
				digito[9] = 0;
		}
		   else{
			   digito[9] = 11 - digito[9];
		}
		
		// Calcula o valor do 11º dígito da verificação
		posicao = 11;
		soma = 0;
		   for (i=0; i<=9; i++) {
			  soma = soma + digito[i] * posicao;
			  posicao = posicao - 1;
		   }
		digito[10] = soma % 11;
		   if (digito[10] < 2) {
				digito[10] = 0;
		   }
		   else {
				digito[10] = 11 - digito[10];
		   }
		
		// Verifica se os valores dos dígitos verificadores conferem
		dv = digito[9] * 10 + digito[10];
		   if (CPF.length > 0)
		   {
			   if (dv != dv_informado)  
			   {
				  document.getElementById('cpf_erro').style.display = '';
				  document.getElementById('cpf_ok').style.display = 'none';
				  document.getElementById('cpf').className = 'formularioinput_erro';
				  return false;
			   }
			   else
			   {
				  document.getElementById('cpf_erro').style.display = 'none';
				  document.getElementById('cpf_ok').style.display = '';
				  document.getElementById('cpf').className = 'formularioinput';
				  return false;
			   }
			}
			else
			{
				document.getElementById('cpf_erro').style.display = 'none' ;
				document.getElementById('cpf_ok').style.display = 'none' ;
				document.getElementById('cpf').className = 'formularioinput';
			}
		}
}