elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web (Moderador: #!drvy)
| | |-+  Timer web javascript !
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Timer web javascript !  (Leído 2,142 veces)
TrashAmbishion


Desconectado Desconectado

Mensajes: 756


Ver Perfil
Timer web javascript !
« en: 24 Febrero 2018, 23:08 pm »

Hola,

Estoy usando un portal cautivo que una vez me logueo me muestra un timer.

Estoy casi seguro de que es con javascript este es el codigo

Código
  1.  
  2.  
  3.     //??????
  4.  function $$(tt){return tt<10?"0"+tt : tt;};
  5.  var today   = new Date();
  6.  var hour  = $$(today.getHours() );
  7.  var minu  = $$(today.getMinutes());
  8.  var second= $$(today.getSeconds());
  9.  var actime= 'null';
  10.  if('notFound.jsp' != 'notFound.jsp')
  11.  {
  12.   var newWnd =window.open("notFound.jsp","_blank");newWnd.opener = null;
  13.  }
  14.       function set()
  15.   {
  16. var loginTime=parseInt((new Date().getTime()-today.getTime())/1000);
  17. if(loginTime++ > 600000)
  18. {
  19. today =new Date() ;
  20. //???????????,????!
  21. alert("Ha iniciado sesión en una semana. Reajuste el tiempo.");
  22. }
  23. if(actime > 0)
  24. {
  25.    setonTime(actime);
  26.    actime++;
  27. }
  28. else if(loginTime >0)
  29. {
  30. setonTime(loginTime);
  31. }
  32. }
  33.  setInterval(set,1000);
  34.  function setonTime(loginTime)
  35. {
  36. var hours   = 0;
  37. var minutes = 0;
  38. var seconds = 0;
  39.  
  40. hours = Math.floor(loginTime/3600);
  41. minutes = Math.floor((loginTime%3600)/60);
  42. seconds = loginTime%60;
  43.  
  44. if(hours <= 9)
  45. {
  46. hours="0"+hours;
  47. }
  48. if(minutes <= 9)
  49. {
  50. minutes="0"+minutes;
  51. }
  52. if(seconds <= 9)
  53. {
  54. seconds="0"+seconds;
  55. }
  56. var cdate = hours + ":" + minutes + ":" + seconds;
  57. document.getElementById('onlineTime').innerHTML = cdate;
  58. }
  59.  
  60.  var g_httpRequest        = null;
  61.  
  62.  var g_isSubmitLogout = false;
  63.  
  64. //???????
  65. function windowExitFunc(e)
  66. {
  67.    var event= window.event||e;
  68. try
  69. {
  70. if(g_isSubmitLogout)
  71. {
  72. return false;
  73. }
  74.  
  75. var message = "Visitar otros sitios web en esta página le llevará fuera de línea de forma anormal. Para visitar otros sitios web, haga clic en Cancelar y abra una nueva página.";
  76.  
  77. if (event)
  78. {
  79. event.returnValue = message;
  80. }
  81.  
  82. }
  83. catch(e)
  84. {
  85. alert("alert window error!!!");
  86. }
  87. return true;
  88. }
  89.  
  90. function userSubmitLogout()
  91. {
  92. if(!confirm("Se le desconectará. ¿Seguro que quieres cerrar sesión?"))
  93. {
  94.       return false;
  95. }
  96.  
  97. logoutImpl();
  98. return true;
  99. }
  100.  
  101. function logoutImpl()
  102. {
  103.  pageOnunload();
  104. }
  105.  
  106. function pageOnunload()
  107. {
  108.        //if(!g_httpRequest){ g_httpRequest = createHttpRequest(); }
  109.        var cookieCheck = document.getElementById("removeCookie");
  110.                var removeCookie = "1";
  111.                if (cookieCheck && cookieCheck.checked == true) {
  112.                    removeCookie = cookieCheck.value;
  113.                }
  114.         var g_httpRequest = createHttpRequest();
  115. if (g_httpRequest == null)
  116.         {
  117.           alert("Se desconecta de forma anormal. Por favor, póngase en contacto con el administrador de la red.");
  118.            return false;
  119.         }
  120.         else
  121.         {
  122.             var urlParam = "ATTRIBUTE_UUID=5F3ECF4FA52669B2A002632DAB1C1326&CSRFHW=8772d9aa7aaa9104f739acb0a1c7f7be"
  123.                 + "&wlanuserip=10.190.17.43"
  124.                 + "&ssid="
  125.                     + "&loggerId=20180223233301814+aismelva@gmail.com"
  126.                     + "&domain="
  127.                     + "&username=aismelva@gmail.com"
  128.                     + "&wlanacname="
  129.                     + "&wlanmac="
  130.                     +"&remove="+removeCookie;
  131.             g_httpRequest.open("GET", "/LogoutServlet?CSRFHW=8772d9aa7aaa9104f739acb0a1c7f7be&" + urlParam, true);
  132.             g_httpRequest.send();
  133.              var isOut;
  134.             g_httpRequest.onreadystatechange=function()
  135.       {
  136.         if (g_httpRequest.readyState==4 && g_httpRequest.status==200)
  137.         {
  138.         if(g_httpRequest.responseText.indexOf("SUCCESS") != -1)
  139.          {
  140.             if (g_httpRequest.responseText.indexOf("REMOVE_AUTHINFO_SUCCESS") != -1)
  141.            {
  142.                                    alert("???logout_result.removecookie.success???");
  143.                                }
  144.                                else if(g_httpRequest.responseText.indexOf("ERROR") != -1){
  145.                                   alert("???logout_result.removecookie.fail???");
  146.            }
  147.               isOut = true;
  148.          }
  149.          else
  150.          {
  151.            isOut = true;
  152.          }
  153.          if(isOut == false)
  154.  {
  155.    alert("Se desconecta de forma anormal. Por favor, póngase en contacto con el administrador de la red.");
  156.    return;
  157.  }
  158.  else if (isOut == null)
  159.  {
  160.    alert("Su red está desconectada. Compruébelo por favor.");
  161.    g_isSubmitLogout = true;
  162.     logoutToFirstPage();
  163.    return;
  164.  }
  165.  // alert("???logout_result.logout_success???");
  166.  g_isSubmitLogout = true;
  167.  //window.location.replace("http://www.google.com");
  168.  logoutToFirstPage();
  169.         }
  170.         else
  171.         {
  172.         if(g_httpRequest.readyState==4 && g_httpRequest.status != 200)
  173.             {
  174.               alert("request error "  + g_httpRequest.status);
  175.               return false;
  176.             }
  177.         }
  178.         }
  179.       }
  180. }
  181.        function logoutToFirstPage()
  182.        {  
  183.         //[false alarm:Cross-Site Scripting: Reflected]
  184.            window.location.href="/nauta_etecsa/OnlineURL/offline.jsp?CSRFHW=8772d9aa7aaa9104f739acb0a1c7f7be&lang="+'es_ES';
  185.        }
  186.         function IEkeydown(event)
  187. {
  188.    if ((event.keyCode == 8)||  //???????
  189.    (event.keyCode == 114)||
  190.    (event.keyCode == 116)||            //?? F5 ???
  191.    (event.keyCode == 122))             //?? F12 ???
  192.    {
  193.       event.keyCode=0;
  194.       event.returnValue=false;
  195.    }
  196.  
  197.    if ((event.altKey)&& ((event.keyCode==37)||(event.keyCode==39))) // ?? Alt + -> ? Alt+ <-
  198.    {
  199.        event.returnValue=false;
  200.    }
  201.  
  202.    if (event.ctrlKey ||(event.shiftKey)&&(event.keyCode==121)) //?? Ctrl ? ? shift+F10
  203.    {
  204.        event.returnValue=false;
  205.    }
  206. }
  207.  
  208. function FFkeydown(event)
  209. {
  210.        var key = event.which;
  211.    if ((key == 8) || (key == 114)|| (key == 116)||  (key == 122))                      //???????(event.keyCode ==   8)||//?? F5 ???//?? F12 ???
  212.    {
  213.      key=0;
  214.        event.preventDefault();
  215.    }
  216.            if ((event.altKey)&& ((key==37)||(key==39))) // ?? Alt + -> ? Alt+ <-
  217.    {
  218.        event.preventDefault();
  219.    }
  220.            if (event.ctrlKey ||(event.shiftKey)&&(key==121)) //?? Ctrl ? ? shift+F10
  221.    {
  222.        event.preventDefault();
  223.    }
  224. }
  225. function windowKeyDown(e)
  226.    {
  227.    if (window.event)
  228.        {
  229.          var event = window.event;
  230.                IEkeydown(event);
  231.        }
  232.        else
  233.        {
  234.       var event= e;
  235.    FFkeydown(event);
  236.    }
  237.        }
  238.  
  239. function createHttpRequest()
  240. {
  241.        var request;
  242.        try
  243.        {
  244.            request = new XMLHttpRequest();
  245.        }
  246.        catch (trymicrosoft)
  247.    {
  248.            try
  249.            {
  250.                request = new ActiveXObject("Microsoft.XMLHTTP");
  251.            }
  252.            catch (failed)
  253.            {
  254.                try
  255.                {
  256.                    request = new ActiveXObject("Msxml2.XMLHTTP");
  257.                }
  258.                catch (othermicrosoft)
  259.                {
  260.                    request = null;
  261.                }
  262.            }
  263.        }
  264.        return request;
  265. }
  266.  
  267.        function windowOnunload()
  268. {
  269.    if (!g_isSubmitLogout)
  270.    {
  271.        logoutImpl();
  272.    }
  273. }
  274.  
  275. function updateAvailableTime()
  276. {
  277. var g_httpRequest = createHttpRequest();
  278.    if (g_httpRequest == null)
  279.            {
  280.           alert("Actualización disponible tiempo falle.");
  281.             return;
  282.         }
  283.         else
  284.         {
  285.            g_httpRequest.open("post", "/EtecsaQueryServlet?CSRFHW=8772d9aa7aaa9104f739acb0a1c7f7be&op=getLeftTime&op1=aismelva@gmail.com&op2=F2DFE7165C25BE8CE34BF00BB73D318F217D582CDF1E174E4EAE42B6496E2FFC", true);
  286.            g_httpRequest.send();
  287.            g_httpRequest.onreadystatechange=function()
  288.            {
  289.             if (g_httpRequest.readyState==4 && g_httpRequest.status==200)
  290.             {
  291.             //?????????
  292.             var responseText = g_httpRequest.responseText;
  293.             if (responseText.indexOf("errorop") != -1)
  294.             {
  295.                alert("Actualización disponible tiempo falle.");
  296.                document.getElementById("availableTime").innerHTML = "--:--:--";
  297.                return;
  298.             }
  299.             //????
  300.             document.getElementById("availableTime").innerHTML = responseText;
  301.  
  302.             }
  303.             else if(g_httpRequest.readyState==4 && g_httpRequest.status != 200)
  304.            {
  305.               alert("request error "  + g_httpRequest.status);
  306.               return false;
  307.            }
  308.            }
  309.         }
  310. }
  311.  

Es posible al yo pinchar en el boton de cerrar la session manipular el tiempo consumido.

Saludos


En línea

srWhiteSkull


Desconectado Desconectado

Mensajes: 444



Ver Perfil WWW
Re: Timer web javascript !
« Respuesta #1 en: 25 Febrero 2018, 11:50 am »

Si es posible, el problema es que no afectará al tiempo registrado en el servidor ya que el js sólo es para mostrar el tiempo en el frontend. El desarrollador posiblemente ya pensó en eso.


« Última modificación: 25 Febrero 2018, 12:32 pm por srWhiteSkull » En línea

TrashAmbishion


Desconectado Desconectado

Mensajes: 756


Ver Perfil
Re: Timer web javascript !
« Respuesta #2 en: 25 Febrero 2018, 14:00 pm »

Hola srWhiteSkull,

No se pierde nada con intentarlo.

Voy a descargar el codigo html del sitio para revisar que funcion realiza el boton de cerrar sesion.

Saludos y gracias

En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
timer en php
PHP
Mr.Chispa 2 3,421 Último mensaje 4 Octubre 2006, 16:49 pm
por Mr.Chispa
Ayuda con javascript en mi web(no tengo ni idea de javascript)
Desarrollo Web
jonathanmr 1 3,426 Último mensaje 1 Febrero 2013, 06:14 am
por Shell Root
parar timer con javascript
Programación General
Matisca 0 1,819 Último mensaje 18 Abril 2013, 06:22 am
por Matisca
[javascript] [Bucle For] invertir números en javascript.
Desarrollo Web
Ali Baba 3 9,811 Último mensaje 29 Mayo 2017, 10:00 am
por ThinkByYourself
[Resuelto] javascript itinerancia de un objeto dentro de un timer
Desarrollo Web
EFEX 6 3,389 Último mensaje 28 Marzo 2018, 13:02 pm
por EFEX
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines