///  Rotinas Principais

function cancelarInscricao() {
    document.forms[0].target = ""; 
    document.forms[0].rotina.value = 0;
    document.forms[0].submit();   
}

function encerrarInscricao() {
    document.forms[0].target = ""; 
    document.forms[0].rotina.value = 0;
    document.forms[0].submit();   
}

function enviarSelecaoEvento() {
    document.forms[0].target = ""; 
    resp = false;
    if (document.forms[0].codigoEvento.length != null) {
        for (i=0; i<=document.forms[0].codigoEvento.length-1; i++) {
             if (document.forms[0].codigoEvento[i].checked) 
                 resp = true;
        }
    }
    else {
    	document.forms[0].codigoEvento.checked = true;
    	resp = true;
    }	
    if (!resp) {
        alert('Código do Evento não selecionado !');
        stop;
    }

    document.forms[0].rotina.value = 2;
    document.forms[0].submit();   
}

function enviarSelecaoCurso() {
    document.forms[0].target = ""; 
    resp = false;
    if (document.forms[0].codigoCurso.length != null) {
        for (i=0; i<=document.forms[0].codigoCurso.length-1; i++) {
             if (document.forms[0].codigoCurso[i].checked) 
                 resp = true;
        }
    }
    else {
    	document.forms[0].codigoCurso.checked = true;
    	resp = true;
    }	
    if (!resp) {
    	alert('Código do Curso não selecionado !');
        stop;
    }
    document.forms[0].rotina.value = 3;
    document.forms[0].submit();   
}

function enviarDadosPessoais() {

    document.forms[0].target = ""; 
    if (verificaCampoInvalido(document.forms[0].wNome, 'C', 3, 'Nome Inválido !')) 
    	stop;
    if (!(verificaRG())) stop;

    if (!(verificaCPF())) stop;

	if (SenhaInvalida(document.forms[0].wSenha, document.forms[0].senhaconf)) stop;

    if (document.forms[0].wEndLogr.value != '') {
        if (verificaCampoInvalido(document.forms[0].wEndLogr,  'E', 1, 'Logradouro Inválido.')) stop;
        if (document.forms[0].wEndCompl.value.length != 0) 
            if (verificaCampoInvalido(document.forms[0].wEndCompl, 'E', 1,'Complemento Inválido.')) stop;

        if (verificaCampoInvalido(document.forms[0].wEndBairro,'T', 1,'Bairro Inválido.')) stop;
        if (verificaCampoInvalido(document.forms[0].wEndCidade,'T', 1,'Cidade Inválida.')) stop;
        if (opcaoInvalida(document.forms[0].wEndUF,'Unidade Federativa Inválida!')) stop;
        if (verificaCampoInvalido(document.forms[0].wEndCEP,   'N', 8,'CEP Inválido.')) stop;
        if (verificaCampoInvalido(document.forms[0].wEndPais,'T', 1,'País Inválido.')) stop;

        if (document.forms[0].wFoneDDI.value != '')
            if (verificaCampoInvalido(document.forms[0].wFoneDDI,   'N', 0,'DDI Inválido.')) stop;
        if (document.forms[0].wFoneDDD.value != '')
            if (verificaCampoInvalido(document.forms[0].wFoneDDD,   'N', 0,'DDD Inválido.')) stop;
        if (verificaCampoInvalido(document.forms[0].wFoneNum,  'N', 0,'Fone Inválido.')) stop;

    }	

    if (document.forms[0].wCelularDDI.value != '')
        if (verificaCampoInvalido(document.forms[0].wCelularDDI,'N', 0,'DDI Inválido.')) stop;
    if (document.forms[0].wCelularDDD.value != '')
        if (verificaCampoInvalido(document.forms[0].wCelularDDD,'N', 0,'DDD Inválido.')) stop;
    if (verificaCampoInvalido(document.forms[0].wCelularNum,'N', 0,'Fone Inválido.')) stop;

    document.forms[0].wEmail.value = document.forms[0].wEmail.value.toLowerCase()
    if (!emailValido(document.forms[0].wEmail.value)) {
        document.forms[0].wEmail.focus()
        stop;
    }

    document.forms[0].rotina.value = 4;
    document.forms[0].submit();
}

function imprimirBoleto(nrParcela) {
    document.forms[0].rotina.value = 5;
    document.forms[0].parcela.value = nrParcela;
    var w = window.open("","boleto", "width=750, height=600,scrollbars=Yes, resizable=YES"); 
    document.forms[0].target = "boleto";
    document.forms[0].submit();
}

function verificarValores(codCurso) {
    document.forms[0].target = ""; 
    document.forms[0].rotina.value = 6;
    document.forms[0].curso.value = codCurso;
    document.forms[0].submit();
}

function verificarHorarios(codCurso) {
    document.forms[0].target = ""; 
    document.forms[0].rotina.value = 7;
    document.forms[0].curso.value = codCurso;
    document.forms[0].submit();
}

function verificarProfessores(codCurso) {
    document.forms[0].target = ""; 
    document.forms[0].rotina.value = 8;
    document.forms[0].curso.value = codCurso;
    document.forms[0].submit();
}

function enviarFaleConosco() {
    document.forms[0].target = ""; 
    document.forms[0].rotina.value = 101;
    document.forms[0].submit();   
}

function consultarComprovante() {
    if (verificaCampoInvalido(document.forms[0].Inscricao, 'N', 10,'Inscricao Inválida.')) return
    if (document.forms[0].Senha.value.length < 4){
        alert('Senha Inválida.');
        document.forms[0].Senha.focus();
        return
    }
    document.forms[0].rotina.value = 52;
    document.forms[0].submit();  
}

function consultarBoleto() {
    if (verificaCampoInvalido(document.forms[0].Inscricao, 'N', 10,'Inscricao Inválida.')) return
    if (document.forms[0].Senha.value.length < 4){
        alert('Senha Inválida.');
        document.forms[0].Senha.focus();
        return
    }
    document.forms[0].rotina.value = 57;
    document.forms[0].submit();  
}

function consultarPagamentos() {
    if (verificaCampoInvalido(document.forms[0].Inscricao, 'N', 10,'Inscricao Inválida.')) return
    if (document.forms[0].Senha.value.length < 4){
        alert('Senha Inválida.');
        document.forms[0].Senha.focus();
        return
    }
    document.forms[0].rotina.value = 61;
    document.forms[0].submit();  
}

function enviarSelecaoPatrocinador() {
    document.forms[0].target = ""; 
    resp = false;
    if (document.forms[0].patrocinador.length != null) {
        for (i=0; i<=document.forms[0].patrocinador.length-1; i++) {
             if (document.forms[0].patrocinador[i].checked) 
                 resp = true;
        }
    }
    else {
    	document.forms[0].patrocinador.checked = true;
    	resp = true;
    }	
    if (!resp) {
    	alert('Responsável não selecionado !');
        stop;
    }
    document.forms[0].rotina.value = 57;
    document.forms[0].submit();   
}

function imprimir2VBoleto(codPatrocinio, nrParcela) {
    document.forms[0].rotina.value = 58;
    document.forms[0].patrocinador.value = codPatrocinio;
    document.forms[0].parcela.value = nrParcela;
    var w = window.open("","boleto", "width=750, height=600,scrollbars=Yes, resizable=YES"); 
    document.forms[0].target = "boleto";
    document.forms[0].submit();
}

function SemBoleto(nrParcela) {
    alert('Este Boleto tem Bolsas/Patrocínios/Ajustes só pode ser impresso na Secretaria da Extensão.');
    return
}

function consultarComprovanteporNome() {
    document.forms[0].target = "";  
    document.forms[0].rotina.value = 53;
    if (document.forms[0].Nome != null) {
        if (verificaCampoInvalido(document.forms[0].Nome,'C', 3, 'Nome Inválido.')) return;
    }
    document.forms[0].submit();
}

function consultarBoletoporNome() {
    document.forms[0].target = "";  
    document.forms[0].rotina.value = 59;
    if (document.forms[0].Nome != null) {
        if (verificaCampoInvalido(document.forms[0].Nome,'C', 3, 'Nome Inválido.')) return
    }
    document.forms[0].submit();
}

function consultarPagamentosporNome() {
    document.forms[0].target = "";  
    document.forms[0].rotina.value = 62;
    if (document.forms[0].Nome != null) {
        if (verificaCampoInvalido(document.forms[0].Nome,'C', 3, 'Nome Inválido.')) return
    }
    document.forms[0].submit();
}

function enviarlinkComprovante(inscricao) {
    document.forms[0].target = "";  
    document.forms[0].Inscricao.value = inscricao;
    document.forms[0].rotina.value = 51;
    document.forms[0].submit();  
}

function enviarlinkBoleto(inscricao) {
    document.forms[0].target = "";  
    document.forms[0].Inscricao.value = inscricao;
    document.forms[0].rotina.value = 56;
    document.forms[0].submit();  
}

function enviarlinkPagamentos(inscricao) {
    document.forms[0].target = "";  
    document.forms[0].Inscricao.value = inscricao;
    document.forms[0].rotina.value = 60;
    document.forms[0].submit();  
}

function solicitarEmailSenha() {
    document.forms[0].target = "";  
    if (verificaCampoInvalido(document.forms[0].Inscricao, 'N', 10,'Inscricao Inválida.')) return;
    document.forms[0].rotina.value = 54;
    document.forms[0].submit();  
}

function enviarEmailSenha() {
    document.forms[0].target = "";  
    document.forms[0].rotina.value = 55;
    document.forms[0].submit();  
}

function hidestatus(){
	window.status=' '
	return true
}

///  Rotinas chamadas

function verificaRG() {
    if (document.forms[0].wNumeroRG.value == '')
        if (document.forms[0].wOrgExpRG.value == '') {
           if ((document.forms[0].wUFRG.value != '  ') && (document.forms[0].wUFRG.value != '')){
               alert('Unidade Federativa Inválida !');
               document.forms[0].wUFRG.focus();
               return false;
            }
        }
        else {
            alert('Orgão Expedidor Inválido !');
            document.forms[0].wOrgExpRG.focus();
            return false;
        }
    else {
        if (document.forms[0].wOrgExpRG.value != '') {
            if (document.forms[0].wUFRG.value == '') {
               alert('Unidade Federativa Inválida !');
               document.forms[0].wUFRG.focus();
               return false;
            }
        }
        else {
            alert('Orgão Expedidor Inválido !');
            document.forms[0].wOrgExpRG.focus();
            return false;
        }    
    }
    return true;
}

function verificaCPF() {
  campo = document.forms[0].wCPF.value;
  if (campo.length == 0) 
	  return true;
  
  if (campo.length != 11) {
      alert('CPF Inválido - Erro na quantidade de dígitos');
      document.forms[0].wCPF.focus();
      return false;
  }
  else {
      if (calculaDigitoCPF(campo,9) != campo.charAt(9)) {
          alert('CPF Inválido');
          document.forms[0].wCPF.focus();
          return false;
      }
      else {
          if (calculaDigitoCPF(campo,10) != campo.charAt(10)) {
              alert('CPF Inválido');
              document.forms[0].wCPF.focus();
              return false;
          }
      }
  }
  return true;

}

function  calculaDigitoCPF(campo,tam) {
    wsoma = 0;
    for (ind=0; ind < tam; ind++)
         wsoma = wsoma + campo.charAt(ind) * (tam+1-ind);
    valor = wsoma / 11;
    vl    = Math.floor(wsoma / 11);
    resto = Math.round((valor-vl)*11);
    if (resto == 0 || resto == 1)
        resto = 0;
    else
        resto = 11 - resto;
    return resto;
}

function emailValido(email){
    resp = false;
    if  (email.length < 3) {
         alert("Email inválido !");
    }
    else {
         erro  = false;
         achou = 0;
         for (i=0;i < email.length; i++) {
              if (email.charAt(i) == " ") {
                  erro = true;
                  break;
              }
              if (email.charAt(i) == "'") {
                  erro = true;
                  break;
              }
              if (email.charAt(i) == ";") {
                  erro = true;
                  break;
              }
              if (email.charAt(i) == "@") {
                  if (achou == 0) {
                      achou = i;
                  }
                  else {
                      erro = true;
                      break;
                  }
              }
         }
         if (erro || achou == (email.length - 1) || achou == 1 || achou == 0) {
             alert("Email Inválido !");
         }
         else {
             resp = true;
         }
    }
    return resp;
}

function SenhaInvalida(senha, senhaconf) {
    senhainvalida = false;
    if (senha.value.length < 4 ) {
        alert('Senha Inválida - Senha deve ter mais de 4 caracteres.');
        senha.value = "";
        senhaconf.value = "";
        senha.focus();
        senhainvalida = true;
       }
    else
        if (senha.value != senhaconf.value) {
            alert('Senha Inválida - Senha e Confirmação de senha devem ser iguais.');
            senha.value = "";
            senhaconf.value = "";
            senha.focus();
            senhainvalida = true;
           }
    return senhainvalida;
}

function verificaCampoInvalido(campo, tipodocampo, tamanhominimo, msg) {
    camposvalidos = ''
    msgcompl = '';
    if (tipodocampo== 'N') {
        camposvalidos = '0123456789'
        msgcompl = 'Só é permitido o uso de Números.'
    }
    if (tipodocampo== 'C') {
        camposvalidos = ' ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
        msgcompl = 'Só é permitido o uso de letras sem acentuação.'
    }
    if (tipodocampo== 'A') {
       camposvalidos = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
       msgcompl = 'Só é permitido o uso de números e letras sem acentuação.'
    }
    if (tipodocampo== 'T') {
       camposvalidos = ' 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
       msgcompl = 'Só é permitido o uso de números e letras sem acentuação.'
    }
    if (tipodocampo== 'E') {
       camposvalidos = ' ,/.-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
       msgcompl = 'Só é permitido o uso de números e letras sem acentuação.'
    }
    if (tipodocampo== 'I') {
       camposvalidos = '- 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
       msgcompl = 'Só é permitido o uso de números, ponto(.), hífen(-) e letras sem acentuação.'
    }
    erro = false
    if (campo.value.length < tamanhominimo )
       erro = true
    else {
         if (tipodocampo == 'C' && campo.value.charAt(0)== ' ')
             erro= true
         else {
            for (i=0;i < campo.value.length;i++)
              if (camposvalidos.indexOf(campo.value.charAt(i)) < 0) {
                  msg = msg + ' ( ' + campo.value.charAt(i) + ' ) caracter inválido.'
                  erro = true
              }
              if (erro)  msg = msg + msgcompl
         }
    }
    if (erro) {
       alert(msg);
       campo.focus();
    }
    return erro
}

function opcaoInvalida(campo,msg) {
    if (campo.selectedIndex == 0) {
       campo.focus()
       alert(msg)
       return true
    }
    return false
}

function verificaNome() {
   verificaCampoInvalido(document.forms[0].wNome,'C', 3, 'Nome Inválido.');
}

