diff --git a/sapl/painel/urls.py b/sapl/painel/urls.py index 0a8888624..2dc5dcdb9 100644 --- a/sapl/painel/urls.py +++ b/sapl/painel/urls.py @@ -3,7 +3,7 @@ from django.conf.urls import url from .apps import AppConfig from .views import (cronometro_painel, get_dados_painel, painel_mensagem_view, painel_parlamentar_view, painel_view, painel_votacao_view, - switch_painel, votante_view) + switch_painel, verifica_painel, votante_view) app_name = AppConfig.name @@ -17,6 +17,8 @@ urlpatterns = [ url(r'^painel/switch-painel$', switch_painel, name="switch_painel"), url(r'^painel/votacao$', painel_votacao_view, name='painel_votacao'), + url(r'^painel/verifica-painel$', verifica_painel, + name="verifica_painel"), url(r'^painel/cronometro$', cronometro_painel, name='cronometro_painel'), # url(r'^painel/cronometro$', include(CronometroPainelCrud.get_urls())), diff --git a/sapl/painel/views.py b/sapl/painel/views.py index a7919c510..d9d7ee029 100644 --- a/sapl/painel/views.py +++ b/sapl/painel/views.py @@ -237,6 +237,13 @@ def switch_painel(request): sessao.save() return JsonResponse({}) +@user_passes_test(check_permission) +def verifica_painel(request): + sessao = SessaoPlenaria.objects.get(id=request.GET['pk_sessao']) + status = sessao.painel_aberto + resposta = JsonResponse(dict(status=status)) + return resposta + @user_passes_test(check_permission) def painel_mensagem_view(request): diff --git a/sapl/templates/sessao/painel.html b/sapl/templates/sessao/painel.html index 9719c18f2..196ff8b9a 100644 --- a/sapl/templates/sessao/painel.html +++ b/sapl/templates/sessao/painel.html @@ -14,8 +14,8 @@
Iniciar painel completo
-
-
+
+

@@ -282,6 +282,33 @@ function switch_painel(aberto) { } } +$(document).ready(function(){ + var pk_sessao = {{root_pk}}; + var botao_abrir = document.getElementById('id_abrir_painel'); + var botao_fechar = document.getElementById('id_fechar_painel'); + + $.ajax({ + data: {pk_sessao: pk_sessao}, + type: 'GET', + dataType: 'json', + url: "{% url 'sapl.painel:verifica_painel' %}", + error: function () { + alert("Erro ao verificar o Painel"); + }, + success: function (data) { + if (data['status']) { + botao_abrir.style.display = 'none'; + botao_fechar.style.display = 'block'; + } else { + botao_abrir.style.display = 'block'; + botao_fechar.style.display = 'none'; + } + }, + }); + + +}); + {% endblock %}