/*****************************************************************************************/
/* Função ajax                                                                           */
/*****************************************************************************************/
var Ajax = false;

function AjaxRequest() {
  Ajax = false;
  if (window.XMLHttpRequest) { // Mozilla, Safari,...
    Ajax = new XMLHttpRequest();
  } else if (window.ActiveXObject) { // IE
    try {
      Ajax = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) {
      try {
        Ajax = new ActiveXObject("Microsoft.XMLHTTP");
      } catch (e) {}
    }
  }    
}

/*****************************************************************************************/
/* Funções para popular o combo de especialidades                                        */
/*****************************************************************************************/
function selecionarEspecialidades() {
  try {  
    var prestador = document.forms[0].select_prestador.value;
    var tipo = document.forms[0].tipo_login.value;

    if(prestador > 0) {
      AjaxRequest();
      if(!Ajax) {
        alert('Não foi possível iniciar o AJAX');
        return;
      }

      Ajax.onreadystatechange = mostrarEspecialidades;
      Ajax.open('GET','especialidades.php?prestador='+prestador+'&tipo='+tipo,true);
      Ajax.send(null);
    } else {
      document.forms[0].select_especialidade.length = 0;
      document.forms[0].select_especialidade.add(opt)
    }
  }
  catch (e){
  }
}

function mostrarEspecialidades() {
  if (Ajax.readyState == 4) {
    if (Ajax.status == 200) {
      // Receberemos um XML com a Lista de Produtos...
      var xmldoc = Ajax.responseXML;
      
      if(xmldoc.hasChildNodes()) {

        var prestador  = xmldoc.getElementsByTagName('prestador');
        var especialidades = prestador[0].childNodes;
        var selp    = document.forms[0].select_especialidade;

        selp.options.length = 0;
        
        for(var i=0;i<especialidades.length;i++) {
          var especialidade = especialidades[i];

          if (especialidade.nodeType == 1)
          {
            if (especialidade.firstChild.nodeType == 1)
            {
              var nome = especialidade.firstChild;
              var cod = nome.nextSibling;
            }
            else
            {
              var nome = especialidade.firstChild;
              nome = nome.nextSibling;

              var cod = nome.nextSibling;
              cod = cod.nextSibling;
            }

            try {
              var especialidade_selecionada = document.forms[0].especialidade_selecionada.value;     

              if (cod.firstChild.nodeValue == especialidade_selecionada) {
                var opt  = new Option(nome.firstChild.nodeValue,cod.firstChild.nodeValue,false,true);
              }
              else {
                var opt  = new Option(nome.firstChild.nodeValue,cod.firstChild.nodeValue,false,false);
              }      
            }
            catch (e) {
              var opt  = new Option(nome.firstChild.nodeValue,cod.firstChild.nodeValues,false,false);
            }
    
            try
            {
              selp.add(opt,null);
            }
            catch(e) // IE
            {
              selp.add(opt);
            }    
          }
        }
      }
    } else {
      alert('Erro no Retorno do Servidor ' + Ajax.statusText);
    }
  }
}

/*****************************************************************************************/
/* Máscara - data                                                                        */
/*****************************************************************************************/
function mascara_data(data) {

  var d = '';
  d = d + data.value;
  if (d.length == 2) {
    if (d.substring(0,3) > '31')
      d = '';
    else
      d = d + '/';
  }
  else if (d.length == 5) {
    if (d.substring(3,5) > '12')
      d = d.substring(0,3);
	else
      d = d + '/';
  }

  document.getElementById(data.name).value = d;
}

function mascara_hora(hora) {

  var h = '';
  h = h + hora.value;
  if (h.length == 2) {
    h = h + ':';
  }

  document.getElementById(hora.name).value = h;
}

/*****************************************************************************************/
/* Abre janela de localização de usuario                                                 */
/*****************************************************************************************/
function abrejanelausuario () {
  window.open('localizausuario.php','nome','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no,height=500,width=600,left=200,top=100');
}

/*****************************************************************************************/
/* Abre janela de localização de cid                                                     */
/*****************************************************************************************/
function abrejanelacid (numero) {
  window.open('localizacid.php?numero='+numero,'nome','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no,height=500,width=600,left=200,top=100');
}  

/*****************************************************************************************/
/* Abre janela de localização de procedimentos                                           */
/*****************************************************************************************/
function abrejanelaprocedimento (numero) {
  try {
    prestador = document.forms[0].select_prestador.value;
  } catch (e) {
    prestador = 0;
  }
  window.open('localizaprocedimento.php?numero='+numero+'&prestador='+prestador,'nome','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no,height=500,width=600,left=200,top=100');
}

/*****************************************************************************************/
/* Abre janela de localização de taxas                                                   */
/*****************************************************************************************/
function abrejanelataxa (numero) {
  try {
    prestador = document.forms[0].select_prestador.value;
  } catch (e) {
    prestador = 0;
  }
  window.open('localizataxa.php?numero='+numero+'&prestador='+prestador,'nome','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no,height=500,width=600,left=200,top=100');
}


/*****************************************************************************************/
/* Abre janela de localização de pacotes do prestador                                    */
/*****************************************************************************************/
function abrejanelapacotes (numero) {
  try {
    prestador = document.forms[0].select_prestador.value;
  } catch (e) {
    prestador = 0;
  }
  window.open('localizapacotes.php?numero='+numero+'&prestador='+prestador,'nome','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no,height=500,width=600,left=200,top=100');
}

/*****************************************************************************************/
/* Abre janela de localização de prestadores                                             */
/*****************************************************************************************/
function abrejanelasolicitante () {
  window.open('localizaprestador.php?solic=true','nome','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no,height=500,width=600,left=200,top=150');
}

/*****************************************************************************************/
/* Abre janela de localização de dente                                                   */
/*****************************************************************************************/
function abrejaneladente (numero) {
  if (document.getElementById) {
    inputs = document.getElementsByTagName("input");
    procedimento = inputs['procedimento'+numero].value;
    window.open('localizadente.php?numero='+numero+'&procedimento='+procedimento,'nome','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no,height=500,width=600,left=200,top=100');
  }
}

/*****************************************************************************************/
/* Abre janela de localização de face                                                    */
/*****************************************************************************************/
function abrejanelaface (numero) {
  if (document.getElementById) {
    inputs = document.getElementsByTagName("input");
    procedimento = inputs['procedimento'+numero].value;
    dente = inputs['dente'+numero].value;
    window.open('localizaface.php?numero='+numero+'&procedimento='+procedimento+'&dente='+dente,'nome','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no,height=500,width=600,left=200,top=100');
  }
}

/*****************************************************************************************/
/* habilita/desabilita campo quantidade                                                  */
/*****************************************************************************************/
function habilitaQuantidade (numero) {
  if (document.getElementById) {
    inputs = document.getElementsByTagName("input");
    dente = inputs['dente'+numero].value;
    face = inputs['face'+numero].value;
    qtde = inputs['quantidade'+numero];

    if ((dente == '00') && (face == '00')) {
      qtde.disabled = false;
    } else {
      qtde.value = 1;;
      qtde.disabled = true;
    }
  }
}

/*****************************************************************************************/
/* validar formulario de liberacao de guias                                              */
/*****************************************************************************************/
function valida_consulta() {
  /*******************************************/
  /* valida campos obrigatorios              */
  /*******************************************/
  function campo_obrigatorio(campo,msg,tipo,texto) {
    var valido = true;

    if ((tipo == 'input') && (campo.value == ""))
      valido = false;
    else if (tipo == 'radio') {
      valido = false;

      for (i=0;i<campo.length;i++){
        if (!valido)
          valido = campo[i].checked;
      }
    }
    
    if (valido)
      return reset_campo(campo,msg,tipo);
    else {
      var d = document.getElementById(msg);

      if (texto == '')
        d.innerHTML = 'Este campo é de preenchimento obrigatório.';
      else
        d.innerHTML = texto;

      d.className = 'erro';

      if (tipo == 'radio') {
        document.getElementById(campo[0].name).className = 'validar-falha';
        document.getElementById(campo[0].name).focus();
      }
      else {
        document.getElementById(campo.name).className = 'validar-falha';
        document.getElementById(campo.name).focus();
      }
      return false;
    }
  }

  /*******************************************/
  /* restaura erros dos campos               */
  /*******************************************/
  function reset_campo(campo,msg,tipo) {
    var d = document.getElementById(msg);
    d.innerHTML = '';
    d.className = 'valido';

    if (tipo == 'radio')
      document.getElementById(campo[0].name).className = '';
    else
      document.getElementById(campo.name).className = '';
    return true;
  }

  v1 = true;
  v2 = true;
  v3 = true;

  if (document.forms[0].cid_obrigatorio.value == 'S') {
    v1 = campo_obrigatorio(document.forms[0].cid,"e_cid","input","Hipótese diagnostica ou CID é de preenchimento obrigatório.");

    if (v1 == false) {
      v1 = campo_obrigatorio(document.forms[0].hipotese,"e_hipo","input","Hipótese diagnostica ou CID é de preenchimento obrigatório.");

      if (v1 == true) {
        reset_campo(document.forms[0].cid,"e_cid","input")
      }
    } else {
      reset_campo(document.forms[0].hipotese,"e_hipo","input")
    }

  }

  v2 = campo_obrigatorio(document.forms[0].carteira,"e_codigo","input","O código do beneficiário é de preenchimento obrigatório.");

  v3 = campo_obrigatorio(document.forms[0].select_prestador,"e_prestador","input","O prestador executante é de preenchimento obrigatório.");

  return (v1 && v2 && v3);
}

/*****************************************************************************************/
/* Mascara cid                                                                           */
/*****************************************************************************************/
function mascara_cid (codigo) {
  temp = '';
  if (codigo.length == 3)
    temp = codigo + '.';
  else
    temp = codigo;

  document.forms[0].cid.value = temp;
}

/*****************************************************************************************/
/* controle de menus drop down                                                           */
/*****************************************************************************************/
over = function() {
  if (document.getElementById("nav") != null) {
    var sfEls = document.getElementById("nav").
    getElementsByTagName("LI");
    for (var i=0; i<sfEls.length; i++) {
      sfEls[i].onmouseover=function() {
      this.className+=" over";
      }
      sfEls[i].onmouseout=function() {
      this.className=this.className.
        replace(new RegExp(" over\\b"), "");
      }
    }
  }
}
if (window.attachEvent) window.attachEvent("onload", over);


/*****************************************************************************************/
/* Leitura biometrica                                                                    */
/*****************************************************************************************/
function capture() {
  var err;
  var result = false;
  
  // Check ID is not NULL
  if ( document.forms[0].carteira.value == '' ) {
    alert('Por favor identifique o paciente primeiramente!');
    return(false);
  }
  
  try { // Exception handling
  
    DEVICE_AUTO_DETECT  = 255;
  
    var objNBioBSP = new ActiveXObject('NBioBSPCOM.NBioBSP.1');
    var objDevice = objNBioBSP.Device;
    var objExtraction = objNBioBSP.Extraction;

    var objMatching = objNBioBSP.Matching;

    // Open device. [AUTO_DETECT]
    // You must open device before capture.
    objDevice.Open(DEVICE_AUTO_DETECT);

    err = objDevice.ErrorCode;  // Get error code  
    if ( err != 0 ) {    // Device open failed
      alert('Device open failed !');
	} else {
	  objExtraction.Capture();
      err = objExtraction.ErrorCode;  // Get error code
    
      if ( err != 0 ) {
	    alert('Problemas na captura da digital! Erro número : [' + err + ']');
	  } else {
	    if (document.forms[0].digital.value == '') { // O usuario nao tem digital cadastrada
          document.forms[0].digital.value = objExtraction.TextEncodeFIR;
          document.forms[0].digitalconfere.value = 'C';  // C significa para cadastrar a digital do usuario
          alert ('Digital confere.');
		}
        else {
		  objMatching.VerifyMatch(document.forms[0].digital.value,objExtraction.TextEncodeFIR);

          if (objMatching.MatchingResult == '1') {
	        alert ('Digital confere.');
            document.forms[0].digitalconfere.value = 'S';
		  } else {
		    alert ('A digital não confere');
            document.forms[0].digitalconfere.value = 'N';
	      }
          result = true;
		}
        objDevice.Close(DEVICE_AUTO_DETECT);
	  }
	}
        
    objExtraction = 0;
    objDevice = 0;    
    objNBioBSP = 0;
    objMatching = 0;
  } catch(e) {
    alert(e.message);
    return(false);
  }
  
  if ( result ) {
    document.MainForm.submit();
  }
  
  return (result);
}

function valida_campos() {

  valido = true;
  var opcao = document.getElementById("opcao");
  var campo = document.getElementById("campo");

  if (opcao.value == '1') {
    var cpf = document.getElementById("cpf");

    if (cpf.value == '') {
      var d = document.getElementById("msg");
      d.innerHTML = 'Informe o CPF do beneficiário.';
      d.className = 'erro';
      valido = false;
    } else if (cpf.value != campo.value){
      var d = document.getElementById("msg");
      d.innerHTML = 'CPF não confere.';
      d.className = 'erro';
      valido = false;
    } else {
      valido = true;
    }
  } else if (opcao.value == '3') {
    var mae = document.getElementById("mae");

    if (mae.value == '') {
      var d = document.getElementById("msg");
      d.innerHTML = 'Informe o nome da mãe do beneficiário.';
      d.className = 'erro';
      valido = false;
    } else if (mae.value.toUpperCase() != campo.value.toUpperCase()) {
      var d = document.getElementById("msg");
      d.innerHTML = 'Nome da mãe não confere.';
      d.className = 'erro';
      valido = false;
    } else {
      valido = true;
    }
  } else if (opcao.value == '2') {
    var nascimento = document.getElementById("nascimento");

    if (nascimento.value == '') {
      var d = document.getElementById("msg");
      d.innerHTML = 'Informe a data de nascimento do beneficiário.';
      d.className = 'erro';
      valido = false;
    } else if (nascimento.value != campo.value){
      var d = document.getElementById("msg");
      d.innerHTML = 'Data de nascimento não confere.';
      d.className = 'erro';
      valido = false;
    } else {
      valido = true;
    }

  } else if (opcao.value == '4') {
    var senhafamilia = document.getElementById("senhafamilia");

    if (senhafamilia.value == '') {
      var d = document.getElementById("msg");
      d.innerHTML = 'Informe a senha.';
      d.className = 'erro';
      valido = false;
    } else if (senhafamilia.value != campo.value){
      var d = document.getElementById("msg");
      d.innerHTML = 'Senha não confere.';
      d.className = 'erro';
      valido = false;
    } else {
      valido = true;
    }
  }

  return valido;
}

/*****************************************************************************************/
/* Marcar/Desmarcar checkbox                                                             */
/*****************************************************************************************/
function marcar_desmarcar(valor) {
  for (i=0;i<document.forms[0].elements.length;i++)
    if(document.forms[0].elements[i].type == "checkbox")
      if (valor == 1) 
        document.forms[0].elements[i].checked=1;
      else
        document.forms[0].elements[i].checked=0;
}

function submitform() {
  document.formulario.submit();
}












/***********************************************************/

/* Insere mascara ao cpf */

function mascara_cpf(cpf) {
  var mycpf = '';
  mycpf = mycpf + cpf;
  if (mycpf.length == 3) {
    mycpf = mycpf + '.';
    document.forms[0].cpf.value = mycpf;
  }
  else if (mycpf.length == 7) {
  mycpf = mycpf + '.';
    document.forms[0].cpf.value = mycpf;
  }
  else if (mycpf.length == 11) {
  mycpf = mycpf + '-';
    document.forms[0].cpf.value = mycpf;
  }
}

/* Insere mascara ao cnpj */

function mascara_cnpj(cnpj) {
  var mycnpj = '';
  mycnpj = mycnpj + cnpj;
  if (mycnpj.length == 2) {
    mycnpj = mycnpj + '.';
    document.forms[0].CNPJ.value = mycnpj;
  }
  else if (mycnpj.length == 6) {
    mycnpj = mycnpj + '.';
    document.forms[0].CNPJ.value = mycnpj;
  }
  else if (mycnpj.length == 10) {
    mycnpj = mycnpj + '/';
    document.forms[0].CNPJ.value = mycnpj;
  }
  else if (mycnpj.length == 15) {
    mycnpj = mycnpj + '-';
    document.forms[0].CNPJ.value = mycnpj;
  }
}



/* Abre janela da leitora */

function abrejanelaleitora () {
  janela = window.open('janelaleitora.php','nome','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,height=300,width=400,left=200,top=150');
  janela.focus();
  text = "Se a janela nao abriu\né possível que voce tenha um\nprograma bloqueador de pop-up!";
  if (janela == null) {
    alert(text);
    return;
  }
}



/* Insere mascara no codigo do usuario */

function mascara_codigo (codigo,mascara) {
  if (mascara.length > 0) {
    tamanho = codigo.length;
    temp = '';
    if (mascara.substring(tamanho,tamanho+1) == '.') {
    temp = codigo + '.';
  } 
  else {
    temp = codigo;
  }
  } 
  else {
    temp = codigo;
  }

  document.forms[0].carteira.value = temp;
}





/* Abre janela recibo */

function abrejanelarecibo (lote,prestador,protocolo) {
  window.open('recibo.php?lote='+lote+'&prestador='+prestador+'&protocolo='+protocolo,'nome','toolbar=no,location=no,directories=no,status=no,menubar=yes,scrollbars=yes,resizable=no,height=550,width=600,left=200,top=100');
}

/* Abre janela itens carencia */

function abrejanelacarencia (carencia,usuario) {
  window.open('proccarencias.php?idc='+carencia+'&n='+usuario,'nome','toolbar=no,location=no,directories=no,status=no,menubar=yes,scrollbars=yes,resizable=no,height=550,width=600,left=200,top=100');
}

function desabilitar(obj) {
  return !obj.disabled;
}



function voltar(pagina) {
   window.location.href = pagina;
}

function carrega_foto(carteira){
    document.getElementById('foto').src = "foto_usuario1.php?cod="+carteira;

    if(carteira == ""){ 
      document.getElementById('foto').style.display = "none";
    } 
    else {
      document.getElementById('foto').style.display = "block";
    }
}
    
