/*
  Módulo de Tratamento de dados caracter
*/
  function validaBotoes(campoBotao, qtdBotoes) {
    /*
      ===========================
      Procedimento: validaBotoes
      Função      : Verificar se um botão de opção foi selecionado
      Entradas    : campoBotao -> O Valor (campo botão) a ser verificado
                    qtdBotoes  -> a Quantidade de botoes exibida
      Saidas      : Número. A saber:
                    99 -> Validação OK
                     1 -> Nenhum botão foi selecionado
      Autor       : Edgar Rocha Mendonça
      Data        : 29/05/2003
      ===========================
    */
    var ret = 1;
    for (i = 0; i < qtdBotoes; i++) {
      if (campoBotao[i].checked) {
        ret = 99;
        break;
      }
    }
    return ret;
  }

  function validaCampo(valor, podeSerVazio) {
    /*
      ===========================
      Procedimento: validaCampo
      Função      : Verificar se um valor digitado é válido
      Entradas    : valor -> O Valor a ser verificado
                    podeSerVazio -> Indicador de preenchimento do valor do campo.
                                    A saber:
                                    true -> O campo pode ser vazio
                                    false -> O campo não pode ser vazio
      Saidas      : Número. A saber:
                    99 -> Validação OK
                     1 -> O campo não pode ser vazio

      Autor       : Edgar Rocha Mendonça
      Data        : 15/05/2003
      ===========================
    */
    if (valor.value == "") {
      if (podeSerVazio) {
        valor.value == "";
        return 99;
      } else {
        return 1;  //O campo não pode ser vazio
      }
    } else {
      return 99;
    }
  }

  function validaEMail(EMail) {
    /*
      ===========================
      Procedimento: validaEMail
      Função      : Verificar se um e-mail foi preenchido corretamente
      Entradas    : campoEMail -> O Valor (campo texto) a ser verificado
      Saidas      : Número. A saber:
                    99 -> Validação OK
                     1 -> O E-Mail não foi digitado corretamente
      Autor       : Edgar Rocha Mendonça
      Data        : 29/05/2003
      ===========================
    */
    campoEMail = String(EMail.value);
    posicaoArroba = campoEMail.indexOf('@');
    posicaoPonto = campoEMail.indexOf('.');
    ret = 1;
    if (posicaoArroba != -1 && posicaoPonto != -1 && posicaoArroba != 0 && posicaoPonto != (campoEMail.length-1)) {
      ret = 99;
    }
    return ret;
  }

  function validaNomeCampo(nomeCampo) {
    /*
      ===========================
      Procedimento: validaNomeCampo
      Função      : Verificar se um Nome de Campo foi preenchido corretamente
                    Para que um campo seja aceito as seguintes
                    regras devem ser seguindas:
                    1  - Não começar com número
                    2 - Ser composto apenas de letras, numeros e do caracter "_" (sublinhado)
      Entradas    : nomeCampo -> O nome do campo a ser verificado
      Saidas      : String. A saber:
                    99 -> Validação OK
                    Qualquer outro número -> campo inválido na posição indicada
      Autor       : Edgar Rocha Mendonça
      Data        : 04/06/2003
      ===========================
    */
    var dadosValidos = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz_";
    var dadoValido = false;
    var posicaoAtual = 99;
    campo = String(nomeCampo.value);
    if (! isNaN(campo.substr(0, 1))) {
      return 1;
    }

    for (i = 0; i < campo.length; i++) {
      dadoValido = false;
      for (j = 0; j < dadosValidos.length; j++) {
        if (campo.substr(i, 1) == dadosValidos.substr(j, 1)) {
          dadoValido = true;
          break;
        }
      }
      if (!dadoValido) {
        posicaoAtual = (i + 1);
        break;
      }
    }

    return posicaoAtual;
  }


