
   // Função para validar e-mail
   // Criado por: Eduardo Y. Palomba (eduardo@linkecerebro.com.br)
   // Criado em : 24 de abril de 2003 - 19h40

   function valida_EMAIL(campo) {
      var goodEmail = campo.match(/\b(^(\S+@).+((\.com)|(\.net)|(\.edu)|(\.mil)|(\.gov)|(\.org)|(\..{2,2}))$)\b/gi);
      if (goodEmail) {
         return true;
      } else {
         return false;
      }
     return true;
   }


    /*-------------------------------------------------------------------
    Função para entrar somente números num campo do formulário

    Permite usar os números do teclado númerica e do alfanumérico,
    delete e backspace, setas direcionais <- e ->, TAB
    *------------------------------------------------------------------*/
    
   function filtro_SoNumeros() {
      if (event.keyCode < 48 || event.keyCode > 57) event.returnValue = false;
   }
   
   
   function filtro_SoNumeros2(evt) {
      
      var tecla;
      
      if (evt.keyCode)
   	   tecla = evt.keyCode;
   	else
   	   tecla = evt.which;
   	   
      if (tecla < 48 || tecla > 57) 
      {
         if (evt.keyCode)
            evt.returnValue = false;
         else
            evt.preventDefault();
      }
   }  
  

    /*-------------------------------------------------------------------
    Função para limpar campo
    *------------------------------------------------------------------*/
    function LimpaCampo(Campo) {
        Campo.value = "";
    }
    
    /*-------------------------------------------------------------------
    Função para preencher campo com...
    *------------------------------------------------------------------*/
    function PreencheCampo(Campo, Valor) {
        if(Campo.value == "")
            Campo.value = Valor;
    }
    
   // FUNÇÃO PARA MÁSCARA DE MOEDA
   // UTILIZAR COM ONKEYUP
   // MAXLENGTH 10
   function mascara_MOEDA(campo){  
      v = campo.value;
      v=v.replace(/\D/g,"")                     //permite digitar apenas números
      v=v.replace(/[0-9]{12}/,"inválido")       //limita pra máximo 999.999.999,99
      v=v.replace(/(\d{1})(\d{8})$/,"$1.$2")    //coloca ponto antes dos últimos 8 digitos
      v=v.replace(/(\d{1})(\d{5})$/,"$1.$2")    //coloca ponto antes dos últimos 5 digitos
      v=v.replace(/(\d{1})(\d{1,2})$/,"$1,$2")  //coloca virgula antes dos últimos 2 digitos
      campo.value = v;
   }
    

   // Função para mascarar Telefone (11)9999-9999
   // Criado por: Diego Koga (diego@linkecerebro.com.br)
   // Criado em : 05 de junho de 2008 - 12h30
   function mascara_FONEFAX(Campo, teclapres){
   
   	var tecla = teclapres.keyCode;
   
   	var vr = new String(Campo.value);
   	vr = vr.replace(".", "");
   	vr = vr.replace(".", "");
   	vr = vr.replace("/", "");
   	vr = vr.replace("-", "");
   
   	tam = vr.length + 1 ;
      
      if (tam == 3)
         Campo.value = '(' + vr.substr(0, 2) + ')';
      if (tam > 4)
         Campo.value = vr.substr(0, 8) + '-' + vr.substr(8, tam);
   }


    /*-------------------------------------------------------------------
    Função para mascarar CEP 99999-999

    Permite usar as teclas delete e backspace, setas direcionais <- e ->
    *------------------------------------------------------------------*/
    function mascara_CEP(Campo, teclapres){

	    if(teclapres.keyCode == 8 || teclapres.keyCode == 46 || teclapres.keyCode == 37 || teclapres.keyCode == 39)
	    {
		    return;
	    }

	    var tecla = teclapres.keyCode;

	    var vr = new String(Campo.value);
	    vr = vr.replace(".", "");
	    vr = vr.replace(".", "");
	    vr = vr.replace("/", "");
	    vr = vr.replace("-", "");

	    tam = vr.length + 1 ;

       if (tam > 5)
          Campo.value = vr.substr(0, 5) + '-' + vr.substr(5, tam);
    }

   // Função para mascarar DATA DD/MM/AAAA
   // Criado por: Eduardo Y. Palomba (eduardo@linkecerebro.com.br)
   // Criado em : 24 de abril de 2003 - 17h20
   function mascara_DATA(Campo, teclapres){
   	var tecla = teclapres.keyCode;
   	
   	var vr = new String(Campo.value);
   	vr = vr.replace(".", "");
   	vr = vr.replace("/", "");
   	vr = vr.replace("-", "");
   
   	tam = vr.length + 1;
   	
   	if (tecla != 9 && tecla != 8){
   		if (tam > 2 && tam < 4)
   			Campo.value = vr.substr(0, 2) + '/' + vr.substr(3, tam);
   		if (tam > 4 && tam < 11)
   			Campo.value = vr.substr(0,2) + '/' + vr.substr(2,2) + '/' + vr.substr(5,tam-4);
   		}
   }


   // Função para mascarar CNPJ
   // Criado por: Eduardo Y. Palomba (eduardo@linkecerebro.com.br)
   // Criado em : 24 de abril de 2003 - 17h20  
   function mascara_CNPJ(Campo, evt){
   
   	var tecla;
      
      if (evt.keyCode)
   	   tecla = evt.keyCode;
   	else
   	   tecla = evt.which;
   
   	var vr = new String(Campo.value);
   	vr = vr.replace(".", "");
   	vr = vr.replace(".", "");
   	vr = vr.replace("/", "");
   	vr = vr.replace("-", "");
   
   	tam = vr.length + 1 ;
   
   	if (tecla != 9 && tecla != 8){
   		if (tam > 2 && tam < 6)
   			Campo.value = vr.substr(0, 2) + '.' + vr.substr(2, tam);
   		if (tam >= 6 && tam < 9)
   			Campo.value = vr.substr(0,2) + '.' + vr.substr(2,3) + '.' + vr.substr(5,tam-5);
   		if (tam >= 9 && tam < 13)
   			Campo.value = vr.substr(0,2) + '.' + vr.substr(2,3) + '.' + vr.substr(5,3) + '/' + vr.substr(8,tam-8);
   		if (tam >= 13 && tam < 15)
   			Campo.value = vr.substr(0,2) + '.' + vr.substr(2,3) + '.' + vr.substr(5,3) + '/' + vr.substr(8,4)+ '-' + vr.substr(12,tam-12);
   		}
   }   
   
    /*-------------------------------------------------------------------
    Função para Validade CPF ou CNPJ
    *------------------------------------------------------------------*/
    function valida_CPFCNPJ(oSrc,args){
        args.Value = args.Value.replace('.', '');
        args.Value = args.Value.replace('.', '');
        args.Value = args.Value.replace('-', '');
        args.Value = args.Value.replace('/', '');

        if (args.Value.length == 11){
            valida_CPF(oSrc,args);
        }else if(args.Value.length == 14){
            valida_CNPJ(oSrc, args);
        }else{
            return args.IsValid = false;
        }
    }

    /*-------------------------------------------------------------------
    Função para Validade CPF
    *------------------------------------------------------------------*/
    function valida_CPF(oSrc,args){

        s = args.Value;

        if (isNaN(s) || s == '11111111111' || s == '22222222222' || s == '33333333333' || s == '44444444444' || s == '55555555555' || s == '66666666666' || s == '77777777777' || s == '88888888888' || s == '99999999999' || s == '00000000000') {
            return args.IsValid = false;
        }

        var i;
        var c = s.substr(0,9);
        var dv = s.substr(9,2);
        var d1 = 0;
        
        for (i = 0; i < 9; i++) {
            d1 += c.charAt(i)*(10-i);
        }

        if (d1 == 0){
            return args.IsValid = false;
        }

        d1 = 11 - (d1 % 11);

        if (d1 > 9) d1 = 0;

        if (dv.charAt(0) != d1) {
            return args.IsValid = false;
        }

        d1 *= 2;

        for (i = 0; i < 9; i++) {
            d1 += c.charAt(i)*(11-i);
        }

        d1 = 11 - (d1 % 11);

        if (d1 > 9) d1 = 0;

        if (dv.charAt(1) != d1) {
            return args.IsValid = false;
        }

        return args.IsValid = true;
    }

    /*-------------------------------------------------------------------
    Função para Validade CNPJ
    *------------------------------------------------------------------*/
    function valida_CNPJ(oSrc, args){

        s = args.Value;

        if (isNaN(s)) {
            return args.IsValid = false;
        }

        var i;
        var c = s.substr(0,12);
        var dv = s.substr(12,2);
        var d1 = 0;

        for (i = 0; i <12; i++){
            d1 += c.charAt(11-i)*(2+(i % 8));
        }

        if (d1 == 0)

        return args.IsValid = false;

        d1 = 11 - (d1 % 11);

        if (d1 > 9) d1 = 0;

        if (dv.charAt(0) != d1){
            return args.IsValid = false;
        }

        d1 *= 2;

        for (i = 0; i < 12; i++){
            d1 += c.charAt(11-i)*(2+((i+1) % 8));
        }

        d1 = 11 - (d1 % 11);

        if (d1 > 9)

        d1 = 0;

        if (dv.charAt(1) != d1){
            return args.IsValid = false;
        }

        return args.IsValid = true;
    } 

    /*-------------------------------------------------------------------
    Função para Validar campo > 0
    *------------------------------------------------------------------*/
    function valida_CampoMaiorZero(oSrc,args){
        args.Value = args.Value.replace('.', '');
        args.Value = args.Value.replace(',', '');

        if (args.Value > 0){
            return args.IsValid = tru;
        }else{
            return args.IsValid = false;
        }
    }

    // Formata Valor para 999.999.999,99
    function FormataReais(fld, milSep, decSep, e) {

    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);// Valor para o código da Chave

    if (strCheck.indexOf(key) == -1) return false; // Chave inválida

    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;

    } 

    //tirarZerosEsquerda - função que tira todos os "0", "," e "." da string passada como argumento
    function tirarZerosEsquerda(STR){ 
      var sAux = ''; 
      STR = new String(STR); 
      var i = 0; 
      
      while (i < STR.length ){ 
         if ((STR.charAt(i)!='.') && (STR.charAt(i)!=',')){ 
            sAux += STR.charAt(i); 
         } 
         i++ 
      } 
      
      STR = new String(sAux); 
      sAux = ''; 
      i = 0; 
      while (i < STR.length ){ 
         if (STR.charAt(i) != '0'){ 
            sAux = STR.substring(i,STR.length) 
            i = STR.length; 
         } 
         i++; 
      } 
      
      return sAux; 
      
    } 

   // Função para validar Data
   // Criado por: Eduardo Y. Palomba (eduardo@linkecerebro.com.br)
   // Criado em : 24 de abril de 2003 - 17h20
   function valida_DATA(data_ano, data_mes, data_dia) {
      timeA = new Date(data_ano, data_mes, 1);
      timeD = timeA - 86400000;
      timeB = new Date(timeD);
      var daysInMonth = timeB.getDate();
      if (daysInMonth >= data_dia) {
         return true;
      } else {
         return false;
      }
   }
   
   // Função para montar flash
   function montaFlash(movie, width, height, wmode, FlashVars){  
   	var swf  = '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"'
       + 'width="'+ width +'" height="'+ height +'"'
       + 'codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab">'
       + '<param name="movie" value="'+ movie +'" /><param name="quality" value="high" /><param name="devicefont" value="true" /><param name="wmode" value="'+ wmode +'" /><param name="FlashVars" value="'+ FlashVars +'" />'
       + '<embed src="'+ movie +'" quality="high" devicefont="true" '
       + 'width="'+ width +'" height="'+ height +'" align="middle"'
       + 'play="true"'
       + 'loop="false"'
       + 'quality="high"'
       + 'wmode="'+ wmode +'"'
       + 'allowScriptAccess="sameDomain"'
       + 'type="application/x-shockwave-flash"'
       + 'FlashVars="'+ FlashVars +'"'
       + 'pluginspage="http://www.macromedia.com/go/getflashplayer"'
       + '><\/embed>'
       + '<\/object>';
   	document.write(swf);
   }
   
   // Função para montar flash
   function montaFlash2(movie, width, wmode, FlashVars){  
   	var swf  = '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"'
       + 'width="'+ width +'"'
       + 'codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab">'
       + '<param name="movie" value="'+ movie +'" /><param name="quality" value="high" /><param name="devicefont" value="true" /><param name="wmode" value="'+ wmode +'" /><param name="FlashVars" value="'+ FlashVars +'" />'
       + '<embed src="'+ movie +'" quality="high" devicefont="true" '
       + 'width="'+ width +'" align="middle"'
       + 'play="true"'
       + 'loop="false"'
       + 'quality="high"'
       + 'wmode="'+ wmode +'"'
       + 'allowScriptAccess="sameDomain"'
       + 'type="application/x-shockwave-flash"'
       + 'FlashVars="'+ FlashVars +'"'
       + 'pluginspage="http://www.macromedia.com/go/getflashplayer"'
       + '><\/embed>'
       + '<\/object>';
   	document.write(swf);
   }
   
   
   
//***********************************************************************************************************
//*********************************** VALIDAÇÕES DE FORMULÁRIOS *********************************************
//***********************************************************************************************************

    /*-------------------------------------------------------------------
    Função para Validar Form de Busca
    *------------------------------------------------------------------*/
    function ValidaBusca(Campo1, Campo2, Campo3, Campo4) {
        if(Campo1.value == "" && Campo2.value == "" && Campo3.value == "" && Campo4.value == "")
        {
            //alert("Dados inválidos para busca!");
            return false;
        }
        else
            return true;
    }
    
    /*-------------------------------------------------------------------
    Função para Validar Form de Newsletter
    *------------------------------------------------------------------*/
    function ValidaNewsletter(Nome, Email) {
        if(Nome.value == "Nome" || Email.value == "E-mail")
        {
            //alert("Dados inválidos!");
            return false;
        }
        else
        {
            return true;
        }
    }

    function detectaBrowser()
    {
        var browser=navigator.appName;
        var b_version=navigator.appVersion;
        var version=parseFloat(b_version);
        
        if (browser=="Netscape")
        {
            return "ns";
        }
        else if(browser=="Microsoft Internet Explorer")
        {
            return "ie";
        }
        else if(browser=="Firefox")
        {
            return "ff";
        }
        else if(browser=="Opera")
        {
            return "opera";
        }
        else
        {
            return "";
        }
    }
