Browse Source

Fix panel clock source and prevent overlapping polling

3.1.x
Edward Ribeiro 4 days ago
parent
commit
7079ca52d8
  1. 7
      sapl/painel/views.py
  2. 13
      sapl/templates/painel/index.html

7
sapl/painel/views.py

@ -139,11 +139,18 @@ def votacao(context, context_vars):
@never_cache
@user_passes_test(check_permission)
def painel_view(request, pk):
logger = logging.getLogger(__name__)
utc_now = timezone.now()
local_now = timezone.localtime(utc_now)
utc_offset = int(local_now.utcoffset().total_seconds() / 60)
server_epoch_ms = int(utc_now.timestamp() * 1000)
logger.info(
"painel_view pk=%s utc_now=%s local_now=%s utc_offset=%s server_epoch_ms=%s",
pk, utc_now, local_now, utc_offset, server_epoch_ms
)
context = {'head_title': str(_('Painel Plenário')),
'sessao_id': pk,
'server_epoch_ms': server_epoch_ms,

13
sapl/templates/painel/index.html

@ -266,11 +266,19 @@
var aparte_previous;
var consideracoes_previous;
const POLL_INTERVAL_MS =
window.location.hostname === "localhost" ? 2000 : 500;
var counter = 1;
(function poll() {
$.ajax({
url: "{% url 'sapl.painel:dados_painel' sessao_id %}",
type: "GET",
dataType: "json",
complete: function() {
setTimeout(poll, POLL_INTERVAL_MS);
},
timeout: 20000, // TODO: decrease
success: function(data) {
$("#sessao_plenaria").text(data["sessao_plenaria"])
$("#sessao_plenaria_data").text("Data Início: " + data["sessao_plenaria_data"])
@ -491,10 +499,7 @@
},
error: function(err) {
console.error(err);
},
dataType: "json",
complete: setTimeout(function() {poll()}, 500),
timeout: 20000 // TODO: decrease
}
})
})();
});

Loading…
Cancel
Save