From 19b9f68e620bb71466b42f3890bc1a55d864262f Mon Sep 17 00:00:00 2001 From: Cesar Carvalho Date: Fri, 12 Jul 2019 08:55:43 -0300 Subject: [PATCH] =?UTF-8?q?Corre=C3=A7=C3=A3o=20do=20reset=20e=20melhorias?= =?UTF-8?q?=20de=20c=C3=B3digo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sapl/templates/sessao/painel.html | 46 ++++++++++++++++--------------- 1 file changed, 24 insertions(+), 22 deletions(-) diff --git a/sapl/templates/sessao/painel.html b/sapl/templates/sessao/painel.html index 8c3fd9b7d..d6d19e76f 100644 --- a/sapl/templates/sessao/painel.html +++ b/sapl/templates/sessao/painel.html @@ -214,9 +214,15 @@ $(document).ready(function(){ $('#cronometro_' + "{{cron.id}}" + '_Start').text('Iniciar'); }) - {% if painel_config.cronometro_ordem and cron.tipo == "Cronômetro da Questão de Ordem" %} - $('#cronometro_' + "{{cron.id}}" + '_Start').click(function() { - if ($('#cronometro_' + "{{cron.id}}" + '_Start').text() == 'Iniciar'){ + $('#cronometro_' + "{{cron.id}}" + '_Start').click(function() { + // Como o botão de start e stop está sendo reaproveitado (é o mesmo botão, que fica mudando de texto), + // deve-se checar se é um start ou um stop + // Ação de start + if ($('#cronometro_' + "{{cron.id}}" + '_Start').text() == 'Iniciar'){ + // Cronômetro da questão de ordem é tratado separadamente + // porque pode parar os demais quando inicia + {% if painel_config.cronometro_ordem and cron.tipo == "Cronômetro da Questão de Ordem" %} + // cronometro da questão de ordem {% for c in cronometros %} {% if c.tipo == "Cronômetro da Questão de Ordem" %} $.get('/painel/cronometro', { tipo: 'cronometro_' + "{{c.id}}", action: 'start', last_time: '0' } ); @@ -230,33 +236,29 @@ $(document).ready(function(){ $('#cronometro_' + "{{c.id}}" + '_Start').text('Iniciar'); {% endif %} {% endfor %} - } else{ - $.get('/painel/cronometro', { tipo: 'cronometro_' + "{{cron.id}}", action: 'stop', last_time: $('#cronometro_' + "{{cron.id}}").val() } ); - $('#cronometro_' + "{{cron.id}}" + '_Reset').show(); - $('#cronometro_' + "{{cron.id}}").runner('stop'); - $('#cronometro_' + "{{cron.id}}" + '_Start').text('Iniciar'); - } - }); - {% else %} - $('#cronometro_' + "{{cron.id}}" + '_Start').click(function() { - if ($('#cronometro_' + "{{cron.id}}" + '_Start').text() == 'Iniciar'){ + // Demais cronômetros + {% else %} $.get('/painel/cronometro', { tipo: 'cronometro_' + "{{cron.id}}", action: 'start', last_time: '0' } ); $('#cronometro_' + "{{cron.id}}" + '_Reset').hide(); $('#cronometro_' + "{{cron.id}}").runner('start'); $('#cronometro_' + "{{cron.id}}" + '_Start').text('Parar'); - } else{ - $.get('/painel/cronometro', { tipo: 'cronometro_' + "{{cron.id}}", action: 'stop', last_time: $('#cronometro_' + "{{cron.id}}").val() } ); - $('#cronometro_' + "{{cron.id}}" + '_Reset').show(); - $('#cronometro_' + "{{cron.id}}").runner('stop'); - $('#cronometro_' + "{{cron.id}}" + '_Start').text('Iniciar'); - } - }); - {% endif %} + {% endif %} + // Ação de stop é igual para todos os cronômetros + } else{ + $.get('/painel/cronometro', { tipo: 'cronometro_' + "{{cron.id}}", action: 'stop', last_time: $('#cronometro_' + "{{cron.id}}").val() } ); + $('#cronometro_' + "{{cron.id}}" + '_Reset').show(); + $('#cronometro_' + "{{cron.id}}").runner('stop'); + $('#cronometro_' + "{{cron.id}}" + '_Start').text('Iniciar'); + } + }); + // Ação de reset é igual para todos os cronômetros $('#cronometro_' + "{{cron.id}}" + '_Reset').click(function() { $.get('/painel/cronometro', { tipo: 'cronometro_' + "{{cron.id}}", action: 'reset', last_time: '0' } ); //$('#cronometro_' + "{{cron.id}}").runner('stop'); - $('#cronometro_' + "{{cron.id}}").runner('reset'); + //$('#cronometro_' + "{{cron.id}}").runner('reset'); + // faz o reset manualmente para que o cronometro retorne para o valor correto + $('#cronometro_' + "{{cron.id}}").val(convertValueToDuration(parseInt("{{cron.duracao_cronometro|duration_to_seconds}}") * 1000)); }); {% endfor %}