diff --git a/sapl/sdr/models.py b/sapl/sdr/models.py
index 2d6c4288e..e283d50db 100644
--- a/sapl/sdr/models.py
+++ b/sapl/sdr/models.py
@@ -23,17 +23,12 @@ class DeliberacaoRemota(models.Model):
verbose_name=_('Descrição'))
inicio = models.DateTimeField(blank=True, null=True,
verbose_name=_('Data e Hora de Início'))
- #TODO: obrigatorio?
sessao_plenaria = models.ForeignKey(SessaoPlenaria,
null=True, blank=True,
verbose_name=_('Sessão Plenária'))
-
- #TODO: preencher quando usuário selecionar a opção 'finalizada'
termino = models.DateTimeField(blank=True, null=True,
verbose_name=_('Data e Hora de Término'))
finalizada = models.BooleanField(default=False, verbose_name=_('Finalizada?'))
-
- #TODO: obrigatório com preenchimento automatico
created_by = models.ForeignKey(get_settings_auth_user_model(),
blank=True, null=True,
verbose_name=_('Criado por'))
diff --git a/sapl/sdr/views.py b/sapl/sdr/views.py
index 10451b514..3ee721afb 100644
--- a/sapl/sdr/views.py
+++ b/sapl/sdr/views.py
@@ -4,6 +4,7 @@ from django.contrib.auth.mixins import PermissionRequiredMixin
from django.contrib.contenttypes.models import ContentType
from django.core.exceptions import MultipleObjectsReturned, ObjectDoesNotExist
from django.core.urlresolvers import reverse, reverse_lazy
+from django.contrib.auth.decorators import user_passes_test
from django.http import JsonResponse
from django.views.generic import TemplateView
from django.utils import timezone
@@ -60,7 +61,10 @@ class DeliberacaoRemotaCrud(Crud):
return context
-#@user_passes_test(check_permission)
+def check_permission(user):
+ return False if user.is_anonymous else True
+
+@user_passes_test(check_permission)
def get_dados_deliberacao_remota(request, pk):
sessao = SessaoPlenaria.objects.get(id=pk)
@@ -87,13 +91,13 @@ def get_dados_deliberacao_remota(request, pk):
)
)
else:
- resultado = "Matéria sendo Lida" if expediente.votacao_aberta else "Matéria Não Lida"
+ resultado = "Matéria sendo Lida" if expediente.votacao_aberta else "Matéria Não Lida"
materias_expediente.append(
(
str(expediente.numero_ordem), expediente.materia.__str__(),
expediente.materia.ementa, resultado
)
- )
+ )
else:
if RegistroVotacao.objects.filter(expediente=expediente).exists():
registro = RegistroVotacao.objects.get(expediente=expediente)
@@ -129,13 +133,13 @@ def get_dados_deliberacao_remota(request, pk):
)
)
else:
- resultado = "Matéria sendo Lida" if ordemdia.votacao_aberta else "Matéria Não Lida"
+ resultado = "Matéria sendo Lida" if ordemdia.votacao_aberta else "Matéria Não Lida"
materias_ordemdia.append(
(
str(ordemdia.numero_ordem), ordemdia.materia.__str__(),
ordemdia.materia.ementa, resultado
)
- )
+ )
else:
if RegistroVotacao.objects.filter(ordem=ordemdia).exists():
registro = RegistroVotacao.objects.get(ordem=ordemdia)
@@ -168,19 +172,19 @@ def get_dados_deliberacao_remota(request, pk):
class ChatView(TemplateView):
-# class ChatView(PermissionRequiredMixin, TemplateView):
template_name = "sdr/deliberacaoremota.html"
- # permission_required = ('sessao.view_expedientemateria')
logger = logging.getLogger(__name__)
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)
+ user = self.request.user
+
try:
context['object'] = DeliberacaoRemota.objects.get(id=kwargs['pk'])
except ObjectDoesNotExist:
- pass #TODO: return error
+ self.logger.error('user=' + user.username + '. Erro ao obter DeliberacaoRemota com pk={}.'.format(kwargs['pk']))
+ return context
- user = self.request.user
content_type = ContentType.objects.get_for_model(Parlamentar)
try:
autor = user.autor
diff --git a/sapl/templates/sdr/deliberacaoremota.html b/sapl/templates/sdr/deliberacaoremota.html
index 75c39a94d..20a365397 100644
--- a/sapl/templates/sdr/deliberacaoremota.html
+++ b/sapl/templates/sdr/deliberacaoremota.html
@@ -8,50 +8,58 @@
{% block base_content %}
{{ block.super }}
-
-
Título: {{ object.titulo }}
- Descrição: {% if object.descricao %}{{ object.descricao }}{% else %}Sem descrição.{% endif %}
- ID: {{ object.chat_id }}
- {% if is_parlamentar %}
- Parlamentar: {{ parlamentar.nome_parlamentar }}
- {% else %}
- Usuário: {{ nome_usuario }}
- {% endif %}
-
-
-
-
- {% if object.sessao_plenaria %}
-
-
-
-
-
-
+ {% if object %}
+
+
Título: {{ object.titulo }}
+ Descrição: {% if object.descricao %}{{ object.descricao }}{% else %}Sem descrição.{% endif %}
+ ID: {{ object.chat_id }}
+ {% if is_parlamentar %}
+ Parlamentar: {{ parlamentar.nome_parlamentar }}
+ {% else %}
+ Usuário: {{ nome_usuario }}
+ {% endif %}
+
+
+ {% if not object.finalizada %}
+
+ {% else %}
+
Atenção! Deliberação Remota finalizada.
+ {% endif %}
+
+ {% if object.sessao_plenaria %}
+
+
+
-
-
-
-
- {% endif %}
-
+
+ {% else %}
+
Erro! Deliberação Remota não encontrada.
+ {% endif %}
{% endblock base_content %}
@@ -92,7 +100,11 @@
-{% endblock extra_js %}
\ No newline at end of file
+{% endblock extra_js %}
diff --git a/sapl/templates/sdr/deliberacaoremota_detail.html b/sapl/templates/sdr/deliberacaoremota_detail.html
index 728cf8a4d..b261bda62 100644
--- a/sapl/templates/sdr/deliberacaoremota_detail.html
+++ b/sapl/templates/sdr/deliberacaoremota_detail.html
@@ -73,4 +73,4 @@
Link da sessão de vídeo
{% endif %}
{% endif %}
-{% endblock detail_content %}
\ No newline at end of file
+{% endblock detail_content %}
diff --git a/sapl/templates/sdr/layouts.yaml b/sapl/templates/sdr/layouts.yaml
index 61750d0d7..af6651e6f 100644
--- a/sapl/templates/sdr/layouts.yaml
+++ b/sapl/templates/sdr/layouts.yaml
@@ -15,4 +15,4 @@ DeliberacaoRemotaEdit:
{% trans 'Deliberação Remota' %}:
- created_by:10 finalizada
- titulo sessao_plenaria
- - descricao
\ No newline at end of file
+ - descricao