Index: lams_tool_doku/web/pages/learning/learning.jsp =================================================================== diff -u -r6d721a0e00cff50aeec869b5399b5d2a49c54fa4 -re5c28ec27d3a1d9c0c58729336662ac62bed1182 --- lams_tool_doku/web/pages/learning/learning.jsp (.../learning.jsp) (revision 6d721a0e00cff50aeec869b5399b5d2a49c54fa4) +++ lams_tool_doku/web/pages/learning/learning.jsp (.../learning.jsp) (revision e5c28ec27d3a1d9c0c58729336662ac62bed1182) @@ -101,13 +101,18 @@ dokuWebsocketPingTimeout = null, dokuWebsocketPingFunc = null; + dokuWebsocket.onclose = function(){ + // react only on abnormal close + if (e.code === 1006 && + Date.now() - dokuWebsocketInitTime > 1000) { + location.reload(); + } + }; + dokuWebsocketPingFunc = function(skipPing){ if (dokuWebsocket.readyState == dokuWebsocket.CLOSING || dokuWebsocket.readyState == dokuWebsocket.CLOSED){ - if (Date.now() - dokuWebsocketInitTime < 1000) { - return; - } - location.reload(); + return; } // check and ping every 3 minutes @@ -117,17 +122,10 @@ dokuWebsocket.send("ping"); } }; + // set up timer for the first time dokuWebsocketPingFunc(true); - dokuWebsocket.onclose = function(){ - // react only on abnormal close - if (e.code === 1006 && - Date.now() - dokuWebsocketInitTime > 1000) { - location.reload(); - } - }; - // run when the server pushes new reports and vote statistics dokuWebsocket.onmessage = function(e) { // reset ping timer