X-Git-Url: http://git.datanom.net/qtadmin.git/blobdiff_plain/b95d1cdbc4fe25e3f0df3b94e990f6af7b330c63..1e354d2079b77adb249465d86e86fa8a59f9dc4e:/js/timer.js diff --git a/js/timer.js b/js/timer.js index 1db783c..f68f084 100644 --- a/js/timer.js +++ b/js/timer.js @@ -1,6 +1,7 @@ -/* vim: set ts=4 tw=0 sw=4 noet: */ -var timerRef=setInterval(function(){myTimer()},1000); +/* vim: set ts=4 tw=4 sw=4 noet: */ +var timerRef=setInterval(function(){myTimer()}, 1000); var timeStart = new Date().getTime() + timeout; +var last = -1; function myTimer() { var elapsed = new Date().getTime(); @@ -8,13 +9,24 @@ function myTimer() { var timeLeft = Math.round(((expire % 86400000) % 3600000) / 60000); if (timeLeft < 0) { - timeLeft = 'Expired'; - document.getElementById("time").style.background = "red"; clearInterval(timerRef); + console.log('Session expired, reload page'); + last = -1; + location.reload(); + } else if (timeLeft == 1) { + if (timeLeft < last || last == -1) { + last = timeLeft; + timeLeft = '< ' + timeLeft + ' min'; + console.log('Session soon to expire'); + document.getElementById("time").style.background = "red"; + document.getElementById("timer").innerHTML = timeLeft; + } } else { - timeLeft += 1; - timeLeft = '< ' + timeLeft + ' min'; + if ((timeLeft < last && timeLeft > 0) || last == -1) { + last = timeLeft; + console.log('Session valid < ' + timeLeft); + timeLeft = '< ' + timeLeft + ' min'; + document.getElementById("timer").innerHTML = timeLeft; + } } - - document.getElementById("timer").innerHTML = timeLeft; }