From cdf6d3d8e8a5386c4592cbfde713fd996d02d79c Mon Sep 17 00:00:00 2001 From: LeandroRoberto Date: Mon, 16 Apr 2018 10:27:56 -0300 Subject: [PATCH 1/4] Fix #1854 --- sapl/parlamentares/forms.py | 7 +++++++ sapl/static/styles/app.scss | 4 ++++ sapl/templates/parlamentares/layouts.yaml | 2 +- 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/sapl/parlamentares/forms.py b/sapl/parlamentares/forms.py index acee7d7e1..e5b8d7d58 100644 --- a/sapl/parlamentares/forms.py +++ b/sapl/parlamentares/forms.py @@ -163,6 +163,13 @@ class ParlamentarCreateForm(ParlamentarForm): required=True, ) + class Meta(ParlamentarForm.Meta): + widgets = { + 'fotografia': forms.ClearableFileInput(), + 'biografia': forms.Textarea( + attrs={'id': 'texto-rico'}) + } + @transaction.atomic def save(self, commit=True): parlamentar = super(ParlamentarCreateForm, self).save(commit) diff --git a/sapl/static/styles/app.scss b/sapl/static/styles/app.scss index 262b3f45e..6a578d102 100644 --- a/sapl/static/styles/app.scss +++ b/sapl/static/styles/app.scss @@ -229,8 +229,12 @@ label { .form-control-static { padding-top: 0; min-height: auto; + img { + max-width: 100%; + } } + // #### pagination ######################################## .pagination { padding-top: 25px; diff --git a/sapl/templates/parlamentares/layouts.yaml b/sapl/templates/parlamentares/layouts.yaml index d31076100..ba7767cd2 100644 --- a/sapl/templates/parlamentares/layouts.yaml +++ b/sapl/templates/parlamentares/layouts.yaml @@ -42,7 +42,7 @@ Parlamentar: - municipio_residencia uf_residencia - telefone_residencia fax_residencia - locais_atuacao - - fotografia + - fotografia:5 - biografia ParlamentarUpdate: From eac2c7102f5941551ef21b2fa2a79ca42ecc40a4 Mon Sep 17 00:00:00 2001 From: Mariana Mendes Date: Mon, 16 Apr 2018 11:31:22 -0300 Subject: [PATCH 2/4] FIX #1857 (#1869) --- sapl/sessao/urls.py | 4 +- sapl/sessao/views.py | 14 +++++- sapl/templates/index.html | 2 +- sapl/templates/navbar.yaml | 2 +- sapl/templates/sessao/pauta_inexistente.html | 12 ++++++ .../templates/sessao/pauta_sessao_detail.html | 43 ++++--------------- 6 files changed, 36 insertions(+), 41 deletions(-) create mode 100644 sapl/templates/sessao/pauta_inexistente.html diff --git a/sapl/sessao/urls.py b/sapl/sessao/urls.py index 6e42afbaa..df358d42d 100644 --- a/sapl/sessao/urls.py +++ b/sapl/sessao/urls.py @@ -6,7 +6,7 @@ from sapl.sessao.views import (AdicionarVariasMateriasExpediente, ExpedienteMateriaCrud, ExpedienteView, MateriaOrdemDiaCrud, MesaView, OradorCrud, OradorExpedienteCrud, PainelView, - PautaSessaoDetailView, PautaSessaoListView, + PautaSessaoDetailView, PautaSessaoView, PesquisarPautaSessaoView, PesquisarSessaoPlenariaView, PresencaOrdemDiaView, PresencaView, @@ -91,7 +91,7 @@ urlpatterns = [ # PAUTA SESSÃO url(r'^sessao/pauta-sessao$', - PautaSessaoListView.as_view(), name='list_pauta_sessao'), + PautaSessaoView.as_view(), name='pauta_sessao'), url(r'^sessao/pauta-sessao/pesquisar-pauta$', PesquisarPautaSessaoView.as_view(), name='pesquisar_pauta'), url(r'^sessao/pauta-sessao/(?P\d+)$', diff --git a/sapl/sessao/views.py b/sapl/sessao/views.py index 54d1fa21e..8203e6df9 100644 --- a/sapl/sessao/views.py +++ b/sapl/sessao/views.py @@ -2429,8 +2429,18 @@ class SessaoListView(ListView): return context -class PautaSessaoListView(SessaoListView): - template_name = "sessao/pauta_sessao_list.html" +class PautaSessaoView(TemplateView): + model = SessaoPlenaria + template_name = "sessao/pauta_inexistente.html" + + def get(self, request, *args, **kwargs): + sessao = SessaoPlenaria.objects.order_by("-data_inicio").first() + + if not sessao: + return self.render_to_response({}) + + return HttpResponseRedirect( + reverse('sapl.sessao:pauta_sessao_detail', kwargs={'pk': sessao.pk})) class PautaSessaoDetailView(DetailView): diff --git a/sapl/templates/index.html b/sapl/templates/index.html index d4c2e9639..7eab8dbc0 100644 --- a/sapl/templates/index.html +++ b/sapl/templates/index.html @@ -80,7 +80,7 @@ Utilizadas para se determinar quais matérias serão discutidas e votadas. A responsabilidade pela elaboração das Pautas, que incluem Expediente e Ordem do Dia, é definida no Regimento Interno que, em geral, dá poderes ao Presidente da Casa Legislativa para a sua elaboração. Também, pode ficar a cargo de um colégio de líderes dos partidos políticos.

- +
diff --git a/sapl/templates/navbar.yaml b/sapl/templates/navbar.yaml index 80d220fb3..c997e2e41 100644 --- a/sapl/templates/navbar.yaml +++ b/sapl/templates/navbar.yaml @@ -43,7 +43,7 @@ - title: {% trans 'Matérias Legislativas' %} url: sapl.materia:pesquisar_materia - title: {% trans 'Pautas das Sessões' %} - url: sapl.sessao:pesquisar_pauta + url: sapl.sessao:pauta_sessao - title: {% trans 'Proposições' %} url: sapl.materia:proposicao_list check_permission: materia.add_proposicao diff --git a/sapl/templates/sessao/pauta_inexistente.html b/sapl/templates/sessao/pauta_inexistente.html new file mode 100644 index 000000000..59b43370c --- /dev/null +++ b/sapl/templates/sessao/pauta_inexistente.html @@ -0,0 +1,12 @@ +{% extends "crud/detail.html" %} +{% load i18n %} +{% load crispy_forms_tags %} +{% load common_tags %} + +{% block actions %}{% endblock %} + +{% block detail_content %} + +Não existem Sessões Plenárias cadastradas + +{% endblock %} \ No newline at end of file diff --git a/sapl/templates/sessao/pauta_sessao_detail.html b/sapl/templates/sessao/pauta_sessao_detail.html index 5c1e97c40..0ceea3125 100644 --- a/sapl/templates/sessao/pauta_sessao_detail.html +++ b/sapl/templates/sessao/pauta_sessao_detail.html @@ -16,25 +16,9 @@ - -
- Expedientes - - - {% for e in expedientes %} - - - - {% endfor %} - -
- {{e.tipo}}:
-

{{e.conteudo|safe|linebreaks}}

-
-
-
Matérias do Expediente + {% if materia_expediente %} @@ -55,28 +39,14 @@ {% endfor %}
-
+ {% else %} + Não existem Matérias de Expediente para essa Sessão Plenária + {% endif %} -
- Oradores do Expediente - - - - - - - - {% for o in oradores %} - - - - - {% endfor %} -
ParlamentarDiscurso
{{o.numero_ordem}} - {{o.parlamentar}}{{o.url_discurso}}
-
Matérias da Ordem do Dia + {% if materias_ordem %} @@ -97,5 +67,8 @@ {% endfor %}
+ {% else %} + Não existem Matérias de Ordem do Dia para essa Sessão Plenária + {% endif %}
{% endblock base_content %} From 81a4f8ac06b622d6c267f7cc98e4097fc6ff4a26 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=A3o=20Pedro=20Sconetto?= Date: Mon, 16 Apr 2018 11:32:10 -0300 Subject: [PATCH 3/4] Fix #1873 (#1881) --- sapl/sessao/views.py | 1 + 1 file changed, 1 insertion(+) diff --git a/sapl/sessao/views.py b/sapl/sessao/views.py index 8203e6df9..25665c792 100644 --- a/sapl/sessao/views.py +++ b/sapl/sessao/views.py @@ -988,6 +988,7 @@ class MesaView(FormMixin, DetailView): [p.parlamentar for p in parlamentares]) - set( parlamentares_ocupados)) + parlamentares_vagos = [p for p in parlamentares_vagos if p.ativo] # Se todos os cargos estiverem ocupados, a listagem de parlamentares # deve ser renderizada vazia if not cargos_vagos: From 1b168a68520c7120c779b44934faf02f28cd42dc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=A3o=20Pedro=20Sconetto?= Date: Mon, 16 Apr 2018 11:32:26 -0300 Subject: [PATCH 4/4] Fix #1875 (#1884) --- sapl/sessao/views.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sapl/sessao/views.py b/sapl/sessao/views.py index 25665c792..d9d4500b6 100644 --- a/sapl/sessao/views.py +++ b/sapl/sessao/views.py @@ -1299,7 +1299,7 @@ class ResumoView(DetailView): # Oradores Expediente oradores = [] for orador in OradorExpediente.objects.filter( - sessao_plenaria_id=self.object.id): + sessao_plenaria_id=self.object.id).order_by('numero_ordem'): numero_ordem = orador.numero_ordem url_discurso = orador.url_discurso parlamentar = Parlamentar.objects.get(