diff --git a/Fila-Web/root/header.tt b/Fila-Web/root/header.tt index 5f726bc..9f936b0 100644 --- a/Fila-Web/root/header.tt +++ b/Fila-Web/root/header.tt @@ -26,13 +26,14 @@ var page_loaded = 0; var waiting_for = ''; var timeout = 0; var timeout_callback; +var timeout_key; function disconnected_so_move_away() { if (page_loaded) { window.location='about:blank'; } } -function check_timeout() { +function check_timeout(tk) { if (timeout == 0) { if (waiting_for) { timeout_callback(); @@ -42,16 +43,27 @@ function check_timeout() { $('aviso_timeout').replace('
' + timeout + ' segundos para ' + waiting_for +'
'); - window.setTimeout(function() { check_timeout() }, 1000); + window.setTimeout(function() { + if (tk == timeout_key) { check_timeout(tk) } + }, 1000); timeout--; } } function set_timeout(tempo, motivo, callback) { - waiting_for = motivo; - timeout = tempo; - timeout_callback = callback; - check_timeout(); + if (motivo && waiting_for == motivo) { + return + } else if (motivo && waiting_for) { + waiting_for = motivo; + timeout = tempo; + timeout_callback = callback; + } else { + waiting_for = motivo; + timeout = tempo; + timeout_callback = callback; + timeout_key = Math.random(); + check_timeout(timeout_key); + } } -- libgit2 0.21.2