$.cookie("vmi1",0); var win=null; var initWinPopup = 0; var blockpopup=true; var p1=$.cookie("factor");//0; var p2=$.cookie("ciclo");//0; var bwn={"name":""}; var alert_msg=new Array(); alert_msg[0]='Ingresa al sistema OK, debe cambiar clave por seguridad';alert_msg[1]='Ingresa al sistema OK';alert_msg[2]='Error, los datos no corresponden a un usuario del sistema, intente nuevamente.';alert_msg[3]='Error, datos vacios de usuario o/y clave';alert_msg[4]='Error, la imagen no corresponde o ya expiro';alert_msg[5]='Error, la sesion ya tiene vinculado este navegador, no se permite reenvair credenciales.';alert_msg[6]='Error, fallo recuperando de session.';alert_msg[7]='Error, no se pudo validar firma digital, esto puede ocurrir si forzo cerrar la sesion';alert_msg[8]='Error, de conexion a la db.';alert_msg[9]='Error, no se encontro la sesion.';alert_msg[10]='Error, ya existe una sesion abierta, verfique por favor.';alert_msg[11]='Error, usted ya tiene una sesion activa';alert_msg[20]='La frase de la imagen es incorrecta, verifique e intente de nuevo';alert_msg[21]='Datos incompletos !!';alert_msg[100]='Tiene una ventana con la aplicacion abierta, si desea cambiar de usuario, por favor cierra la ventana e intente de nuevo.';alert_msg[101]='Se encuentra autenticado en el sistema.';alert_msg[22]='Su usuario ha sido bloqueado por demasiados intentos de acceso forzado'; //pn unico, no debe existir en tiempos de ejecucion algo igual var pn="wc863abd87a83405795d9e3b1e67cde08"+md5(new Date().getTime());//popup name var np=0;//num window var envalidacion=false; var enviandodatos=false; //mensaje para relinkearse despues de autenticarse, evita robots var msgFormLoginPostLogin={}; msgFormLoginPostLogin.ca = '

Usted tiene bloqueo de ventanas, presione el siguiente enlace para ingresar

Ingresar al sistema

';msgFormLoginPostLogin.co = '

Usted tiene bloqueo de ventanas, presione el siguiente enlace para ingresar

Ingresar al sistema

'; //mensaje para relinkearse despues de autenticarse, evita robots var msgFormLoginPostLoginOk={}; msgFormLoginPostLoginOk.co = '

Usted ingreso al sistema, ya hay una ventana emergente activa.

';msgFormLoginPostLoginOk.ca = '

Usted ingreso al sistema, ya hay una ventana emergente activa.

'; function addListener(element, baseName, handler) { if(element){ if (element.addEventListener) element.addEventListener(baseName, handler, false); else if (element.attachEvent) element.attachEvent('on'+baseName,handler); } } function fireEvent(element,event){ event.type=event; if (document.createEventObject){ // dispatch for IE var evt = document.createEventObject(); return element.fireEvent('on'+event,evt) } else{ // dispatch for firefox + others var evt = document.createEvent("HTMLEvents"); evt.initEvent(event, true, true ); // event type,bubbling,cancelable return !element.dispatchEvent(evt); } } addListener(window, "load", function(){ addListener(this, "unload", function(){ if(win!=null){ win.location.href="menu/salir.php?gohome=true&close=true"; } }) addListener(this, "beforeunload", function(){ $.ajax({ type: "POST", url: "menu/salir.php", data: "UUID="+windowName, success: function(msg){ window.location.reload(); } }); alert("Gracias por su visita!"); return null; }); //$("#zis").css("display","block"); function onBlur() { document.body.className = 'blurred'; }; function onFocus(){ //revalidar session document.body.className = 'focused'; }; if (/*@cc_on!@*/false) { // check for Internet Explorer document.onfocusin = onFocus; document.onfocusout = onBlur; } else { window.onfocus = onFocus; window.onblur = onBlur; } $("#enviar").click(function(){ //$("#enviar")[0].disabled="disabled"; MM_openBrWindow(); }); $("#clave").keypress(function(event){ if ( event.which == 13 ) { if($("#imgsecure")[0].value.length>0){ $("#enviar")[0].disabled="disabled"; MM_openBrWindow(); }else{ $("#imgsecure").focus(); } } }); $("#imgsecure").keypress(function(event){ if ( event.which == 13 ) { MM_openBrWindow(); } }); $("#usuario").keypress(function(event){ if ( event.which == 13 ) { $("#clave").focus(); } }); $("#cambiarimagen").click(cambiarimagen); var d=new Date(); $.ajax({ type: "GET", url: "secure/codsec.php", data: "t="+d.getTime() }); }); function cambiarimagen(){ var srcimg=$("#imagen").get(0).src; var d=new Date(); var srcimgn=srcimg.substr(0,srcimg.indexOf("i=")+2)+""+d.getTime(); $("#imagen")[0].src=srcimgn; } //se bloquean las siguientes lineas, para que siempre el usuario active un enlace despues de autenticarse para que se valide en una instancia segunda para evitar robots /*var win=window.open("about:blank", md5(new Date().getTime()), "location=0,status=0,scrollbars=0,width=10,height=10,menubar=no,toolbar=no,screenX=0,screenY=0"); if(!win || win.closed || typeof win.closed=='undefined' || win.screenX==0 || win.outerWidth == 0) { blockpopup=true; if(win!='undefined' && win!=null){ win.moveTo(5,5) setTimeout(function(){ if(win.screenX==0 || win.outerWidth == 0){ }else{ blockpopup=false; win.close(); } },1000) } }else{ win.close(); blockpopup=false; }*/ //setTimeout(function(){alert(blockpopup);},3000) function MM_openBrWindow() { if($("#usuario").get(0).value.length>0 && $("#clave").get(0).value.length>0 && $("#imgsecure").get(0).value.length>0){ //if($("#imgsecure").get(0).value.length==4 && md5(Base64.encode(md5($("#imgsecure").get(0).value.toLowerCase())))==$.cookie("ebf56bf9511cfe609ef1fd4de34d25ad") && envalidacion==false){ if(md5($("#imgsecure").get(0).value.toLowerCase())==$.cookie("himg")){ //poner una variable temporal para evitar replica de solicitudes envalidacion=true; //identifica la ventana actual que es validacion de credenciales window.name="base"; if(enviandodatos==false){ //if(win=abrirventana()){ enviandodatos=true; var windowName = pn; var url ='secure/vw.php'; var datos='{"UUID":"'+windowName+'","usuario":"'+$("#usuario").get(0).value+'","clave":"'+md5($("#clave").get(0).value)+'","imgsecure":"'+md5($("#imgsecure").get(0).value.toLowerCase())+'"}'; $.ajax({ type: "POST", url: "secure/checkHash.php", data: ecs(Base64.encode(datos)), success: function(msg){ enviandodatos=false; $("#enviar")[0].disabled=""; if(msg!=undefined && msg!=null){ if(parseInt(msg)>-1 && parseInt(msg)<100){ var r=parseInt(msg); }else{ var r=new String(decs(Base64.decode(msg))); r=parseInt(hex2bin(r)); } //switch(parseInt(msg)){ switch(r){ case 0: case 1: $.cookie("salir",0,{path:'/'}) $("#usuario").get(0).value=''; $("#clave").get(0).value=''; $("#imgsecure").get(0).value=''; var refrescar=false; $("#usuario").get(0).disabled="disabled"; $("#clave").get(0).disabled="disabled"; $("#imgsecure").get(0).disabled="disabled"; goWinSession(); break; //no se refresca el navegaodr case 2: case 3: case 4: case 22: case 10: $("#clave").get(0).value=''; $("#imgsecure").get(0).value=''; $("#clave").get(0).focus(); if(alert_msg[r]!=undefined && alert_msg[r]!=null){ alert(alert_msg[r]); }else{ } bwn.name=''; cambiarimagen(); break; //id donde es necesario refrescar session default: //son alertas que no se deben informar al usuario, por eso se resete el login alert(alert_msg[r]) $.ajax({ type: "POST", url: "menu/salir.php", data: "UUID="+windowName, success: function(msg){ window.location.reload(); } }); break; } } } }); envalidacion=false; }else{ //alert(alert_msg[10]); //envalidacion=false; } }else{ cambiarimagen(); $("#imgsecure")[0].value=''; alert(alert_msg[20]) $("#enviar")[0].disabled=""; } }else{ cambiarimagen(); $("#clave").get(0).value='' alert_msg[21] $("#enviar")[0].disabled=""; } return false; } function goWinSession() { if(win!=null){ win.onbeforeunload=false; win.onunload=false; addListener(win, "beforeunload", function(){return null;}); addListener(win, "unload", function(){return null;}); win.close(); win=null; } win=window.open('about:blank', pn, "location=0,status=0,scrollbars=0,width="+screen.width+",height="+screen.height+",menubar=no,toolbar=no,screenX=0,screenY=0"); if(win!=null){ if(win.focus){win.focus();} setTimeout(function(){ if(win.innerHeight>0){ if($(".login-form").get(0)!=undefined && $(".login-form").get(0)!=null){ $(".login-form").get(0).innerHTML=msgFormLoginPostLoginOk.ca; } //pagina col if($(".loguin-container").get(0)!=undefined && $(".loguin-container").get(0)!=null){ $(".loguin-container").get(0).innerHTML=msgFormLoginPostLoginOk.co; } //desbloqueado win.location.href="secure/vw.php"; if(initWinPopup == 0){ initWinPopup=1; setInterval(function(){validateSessionActive(win)},15000);//verificar que exista session cada 15 segundos } }else{ win.close(); if($(".login-form").get(0)!=undefined && $(".login-form").get(0)!=null){ $(".login-form").get(0).innerHTML=msgFormLoginPostLogin.ca; } //pagina col if($(".loguin-container").get(0)!=undefined && $(".loguin-container").get(0)!=null){ $(".loguin-container").get(0).innerHTML=msgFormLoginPostLogin.co; } } },100) }else{ if($(".login-form").get(0)!=undefined && $(".login-form").get(0)!=null){ $(".login-form").get(0).innerHTML=msgFormLoginPostLogin.ca; } //pagina col if($(".loguin-container").get(0)!=undefined && $(".loguin-container").get(0)!=null){ $(".loguin-container").get(0).innerHTML=msgFormLoginPostLogin.co; } } } function asciitostring(str){ var res = "" for (i=0;i < str.length; i++) { res += str.charCodeAt(i) + ','; } return res.substr(0, res.length - 1); } function validateSessionActive(win){ $.ajax({ type: "POST", url: "secure/activesession.php", data: "UUID="+pn, success: function(msg){ if(parseInt(msg)==0){ //cerrar ventana emergente if(win!=undefined && win!=null){ win.close(); } //volver a cargar login setTimeout(function(){window.location.reload();},3100); } } }); }