<!--
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' FUNCTION - validaCNPJ
'
' Proposito: faz a validação do CNPJ. Retorna true se for válido e
' false se não for
'
' Parametros: numCPJ - [in]: numero do cnpj sem pontuação
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
function validaCNPJ(numCNPJ)
   Dim RecebeCNPJ, Numero(14), soma, resultado1, resultado2
     
   RecebeCNPJ = numCNPJ
     
   if len(RecebeCNPJ) = 0 then
      alert("Campo CNPJ vazio. Redigite o CNPJ.")
      validaCNPJ=False
      exit function
   end if
     
   if RecebeCNPJ="00000000000000" then
      alert("CNPJ inválido.")
      validaCNPJ=False
      exit function
   end if
             
   Numero(1) = Cint(Mid(RecebeCNPJ,1,1))
   Numero(2) = Cint(Mid(RecebeCNPJ,2,1))
   Numero(3) = Cint(Mid(RecebeCNPJ,3,1))
   Numero(4) = Cint(Mid(RecebeCNPJ,4,1))
   Numero(5) = Cint(Mid(RecebeCNPJ,5,1))
   Numero(6) = Cint(Mid(RecebeCNPJ,6,1))
   Numero(7) = Cint(Mid(RecebeCNPJ,7,1))
   Numero(8) = Cint(Mid(RecebeCNPJ,8,1))
   Numero(9) = Cint(Mid(RecebeCNPJ,9,1))
   Numero(10) = Cint(Mid(RecebeCNPJ,10,1))
   Numero(11) = Cint(Mid(RecebeCNPJ,11,1))
   Numero(12) = Cint(Mid(RecebeCNPJ,12,1))
   Numero(13) = Cint(Mid(RecebeCNPJ,13,1))
   Numero(14) = Cint(Mid(RecebeCNPJ,14,1))
            
   soma = Numero(1)*5 + Numero(2)*4 + Numero(3)*3 + Numero(4)*2 + Numero(5)*9 + Numero(6)*8 + Numero(7)*7 + Numero(8)*6 + Numero(9)*5 + Numero(10)*4 + Numero(11)*3 + Numero(12)*2
   soma = soma -(11* (int(soma/11)))
            
   if soma = 0 or soma = 1 then
      resultado1 = 0
   else
      resultado1 = 11 - soma
   end if
            
   if resultado1 = Numero(13) then
      soma = Numero(1)*6 + Numero(2)*5 + Numero(3)*4 + Numero(4)*3 + Numero(5)*2 + Numero(6)*9 + Numero(7)*8 + Numero(8)*7 + Numero(9)*6 + Numero(10)*5 + Numero(11)*4 + Numero(12)*3 + Numero(13)*2
      soma = soma-(11*(int(soma/11)))
                
      if soma = 0 or soma = 1 then
         resultado2=0
      else
         resultado2 = 11- soma
      end if
                
      if resultado2 = Numero(14) then
         validaCNPJ = true
      else
         alert("CNPJ Inválido. Redigite o CNPJ.")
         validaCNPJ = false
         exit function
      end if
   else
      alert("CNPJ Inválido. Redigite o CNPJ.")
      validaCNPJ = false
      exit function
   end if
   validaCNPJ=true
end function



'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' FUNCTION - verifEmail
'
' Proposito: verifica se um e-mail é valido, retornando true se for
'  false caso contrário
'
' Parametros: email - [in]: string com o e-mail
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
function verifEmail(email)
   tam = Len(email)

   arroba = False
   ponto = False

   'Verifica se tem o símbolo @
   for c = 1 To tam
      If Not arroba Then
         If Mid(email, c, 1) = "@" Then
            arroba = True
            posArroba = c
         End If
      ElseIf Not ponto Then
         If Mid(email, c, 1) = "." Then
            ponto = True
            posPonto = c
            Exit For
         End If
      End If
   next

   'Se não tiver, invalida o email
   If Not arroba Or Not ponto Then
      alert("E-mail incorreto. Sem o provedor (ex: @globo.com) ou sem o tipo de provedor (ex: com.br).")
      verifEmail = False
      Exit Function
   End If

   'Verifica se existe texto entre o arroba e o primeiro ponto
   nvstr = ""
   For c = posArroba + 1 To posPonto - 1
      'recebe o texto entre o arroba e o primeiro ponto
      nvstr = nvstr & Mid(email, c, 1)
   Next

   If Len(nvstr) = 0 Then
      alert("E-mail incorreto. Sem provedor (ex: @globo.com)")
      verifEmail = False
      Exit Function
   End If

   'verifica se tem ponto no final
   If Right(email, 1) = "." Then
      alert("E-mail incorreto. Não pode terminar com ponto")
      verifEmail = False
      Exit Function
   End If
   'Email correto
   verifEmail = true
End Function



'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' FUNCTION - txtUCase
'
' Proposito: converte o texto de um textbox para MAIUSCULA.
'
' Parametros: txt - [in]: nome do textbox
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
function txtUCase(txt)
   document.all.item(txt).value = Ucase(document.all.item(txt).value)
end function



Function ValidaCpf(Cpf)
    Dim Resto, Digito, d1, d2, xx, i
    Dim MyCpf
    
    d1 = 0
    d2 = 0
    xx = 1
    MyCpf = Trim(StrTran(Cpf, "-", ""))
    
    For i = 1 To Len(MyCpf) - 2
        d1 = d1 + (11 - xx) * Mid(MyCpf, i, 1)
        d2 = d2 + (12 - xx) * Mid(MyCpf, i, 1)
        xx = xx + 1
    Next
    Resto = d1 - (Int(d1 / 11) * 11)
    if resto < 2 then
       digito = 0
    else
       digito = 11 - resto
    end if
    d2 = d2 + 2 * Digito
    Resto = d2 - (Int(d2 / 11) * 11)
    
    if resto < 2 then
       nvdigito = 0
    else
       nvdigito = 11 - resto
    end if
    
    Digito = Right(CStr(Digito), 1) + Right(CStr(nvdigito), 1)
    If Digito <> Right(MyCpf, 2) Then
        ValidaCpf = False
    Else
        ValidaCpf = True
    End If
    
End Function


function StrTran(Texto, Acha, Troca)

    Dim InicioString
    Dim FinalString
    Dim Temp

    If VarType(Texto) <> vbString Or VarType(Acha) <> vbString Or VarType(Troca) <> vbString Then
        If VarType(Texto) = vbNull Then
            Temp = ""
        Else
            Temp = Texto
        End If
    ElseIf InStr(Texto, Acha) = 0 Then
        Temp = Texto
    Else
        Do
            InicioString = InStr(Texto, Acha)
            FinalString = InicioString + IIf(Len(Acha) = 0, 1, Len(Acha))
            Texto = Mid(Texto, 1, InicioString - 1) & Troca & Mid(Texto, FinalString)
        Loop While InStr(Texto, Acha) <> 0
        Temp = Texto
    End If
    StrTran = Temp
End Function
-->
