var aSystem=false; var iRegistroEmpleado=-1; var capturandoEmpleado=false; var IDDispositivoEmpleado=''; var afterValidateOkEmpleado=null; var afterFunctionErrorEmpleado=null; function motrarVentanaAutenticacionBiometricaEmpleado(idRegistro,functionOK,functionError,titulo,nombreEmpleado,aS) { aSystem=aS?aS:''; iRegistroEmpleado=idRegistro; afterValidateOkEmpleado=functionOK; afterFunctionErrorEmpleado=functionError; var objConf={}; objConf.urlHost='127.0.0.1'; objConf.puerto='1984'; objConf.funcOnOpen=onOpenBiometricoEmpleado; objConf.funcOnMessageRespuesta=onMessageRespuestasBiometricoEmpleado; objConf.funcOnMessageEventos=onMessageEventosBiometricoEmpleado; objConf.funcOnMessagePeticiones=onMessagePeticionesBiometricoEmpleado; objConf.funcOnError=onErrorBiometricoEmpleado; latisUtilitiesInstance=new cLatisUtilities(objConf); var form = new Ext.form.FormPanel( { baseCls: 'x-plain', layout:'absolute', cls:'panelSiugj', defaultType: 'label', tbar: [ { xtype:'label', html:'
' } ], items: [ { xtype:'label', x:30, y:0, cls:'letraNombreTablero', html:'Usuario a autenticar: '+nombreEmpleado }, { xtype:'panel', id:'panelDedo_0', border:true, frame:false, x:240, y:50, height:210, width:230, cls:'marcoCapturaImagen', layout:'border', items: [ { xtype:'label', id:'imgDedo', region:'center', html:'' } ] }, { xtype:'label', id:'imgCliente', x:50, y:50, width:180, height:210, html:'
' } ] } ); var ventanaAM = new Ext.Window( { title: 'Comprobación biométrica'+(titulo?(' - '+titulo):''), id:'vCapturaHuella', width: 540, height:450, layout: 'fit', plain:true, modal:true, closable:false, cls:'msgHistorialSIUGJ', bodyStyle:'padding:5px;', buttonAlign:'center', items: form, listeners : { show : { buffer : 10, fn : function() { var cmbDispositivo=crearComboExt('cmbDispositivo',[],0,0,350,{ctCls:'comboWrapSIUGJControl',cls:'comboSIUGJControl',listClass:'listComboSIUGJControl'}); cmbDispositivo.on('select',function() { capturarHuellaEmpleado(); } ) cargarDipositivosConectadosBiometricoEmpleado(); } }, close: function() { detenerCapturaHuellaEmpleado(); capturandoEmpleado=false; latisUtilitiesInstance.cerrarSocket(); } }, buttons: [ { text: 'Cancelar', cls:'btnSIUGJ', width:140, handler:function() { detenerCapturaHuellaEmpleado(); ventanaAM.close(); } } ] } ); ventanaAM.show(); return ventanaAM; } function detenerCapturaHuellaEmpleado() { var arrParametro=[]; if(typeof(IDDispositivo)!='undefined') latisUtilitiesInstance.sendMessage('BIOMETRICO',IDDispositivo,'stopCaptureFingers',arrParametro); } function onOpenBiometricoEmpleado(e) { } function onErrorBiometricoEmpleado(e) { if(e.currentTarget.readyState==3) { function resp() { window.parent.cerrarVentanaFancy(); } msgBox('No se ha podido conectar con '+appName+', verifique que la aplicación se esté ejecutando e intente de nuevo',resp); return; } } function onMessageEventosBiometricoEmpleado(e) { if(!capturandoEmpleado) return; console.log('Ingresar evento'); console.log(e); if(e.cDispositivo=='BIOMETRICO') { switch(e.comando) { case 'eventCountDispositivosChange': var arrDispositivos=[]; var x; var dispositivo; var data1=eval(e.data1); if(data1.length==0) { return; } for(x=0;x'+e.msgError+'
¿Desea reintentar la operación?',respErr); return; } else { msgBox('No se ha podido llevar a cabo la operación debido al siguiente problema:
'+e.msgError); return; } } switch(e.comando) { case 'result_getDispositivos': var arrDispositivos=[]; var x; var dispositivo; var data1=eval(e.data1); if(data1.length==0) { msgBox('No se ha detectado algún dispositivo conectado'); return; } dispositivo=data1[0]; IDDispositivo=dispositivo.idDispositivo; capturarHuellaEmpleado(); break; case 'result_startCaptureFingers': mostrarMensajeProcesando('Realizando comparación biométrica'); var cadObj='{"tipoBusqueda":"T","iRegistro":"'+iRegistroEmpleado+'","wsq":"'+bE(e.data2)+'","aS":"'+(aSystem?1:0)+'"}'; function funcAjax(peticion_http) { var resp=peticion_http.responseText; arrResp=resp.split('|'); if(arrResp[0]=='1') { ocultarMensajeProcesando(); if(arrResp[1]=='1') { capturandoEmpleado=false; if(afterValidateOkEmpleado) afterValidateOkEmpleado(iRegistroEmpleado,arrResp) } else { if(afterFunctionErrorEmpleado) afterFunctionErrorEmpleado(iRegistroEmpleado,arrResp) } } else { msgBox('No se ha podido realizar la operación debido al siguiente problema:'+'
'+arrResp[0]); } } obtenerDatosWebV2('../modulosEspeciales_FONACOT/paginasFunciones/funcionesEspecialesFonacot.php',funcAjax, 'POST','funcion=25&cadObj='+cadObj,''); break; case 'result_stopCaptureFingers': capturandoEmpleado=false; break; } } } function cargarDipositivosConectadosBiometricoEmpleado() { mostrarMensajeProcesando('Detectando dispositivos conectados...'); var tareaActiva=setInterval(function() { if( latisUtilitiesInstance.isConected()) { clearInterval(tareaActiva); latisUtilitiesInstance.sendMessage('BIOMETRICO','','getDispositivos',[]); } }, 500); } function capturarHuellaEmpleado() { var arrParametro=[]; arrParametro.push('0'); capturandoEmpleado=true; latisUtilitiesInstance.sendMessage('BIOMETRICO',IDDispositivo,'startCaptureFingers',arrParametro); } function setImageFingerEmpleado(dedo,imagen) { gEx('imgDedo').setText('
',false); } function setMessageBarEmpleado(msg) { gE('lblMessageBar').innerHTML=msg; }