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/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 82fd8489c..d7baa4926 100644 --- a/sapl/sessao/views.py +++ b/sapl/sessao/views.py @@ -990,7 +990,7 @@ class MesaView(FormMixin, DetailView): parlamentares_ocupados)) org_parlamentares_vagos = sorted(parlamentares_vagos, key=lambda x: x.nome_completo) - + org_parlamentares_vagos = [p for p in org_parlamentares_vagos if p.ativo] # Se todos os cargos estiverem ocupados, a listagem de parlamentares # deve ser renderizada vazia if not cargos_vagos: @@ -1301,7 +1301,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( @@ -2432,8 +2432,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/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/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/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: 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 %}