Browse Source

Cria Rodapé Global por tipos de textos articulados (#2659)

* add field rodape_global

* add o field rodape_global ao formulário de edição e a renderização do texto
pull/2579/head
Leandro Roberto Silva 6 years ago
committed by Leandro Roberto
parent
commit
4909d0e306
  1. 24
      sapl/compilacao/forms.py
  2. 20
      sapl/compilacao/migrations/0011_tipotextoarticulado_rodape_global.py
  3. 7
      sapl/compilacao/models.py
  4. 1
      sapl/templates/compilacao/layouts.yaml
  5. 3
      sapl/templates/compilacao/text_list.html

24
sapl/compilacao/forms.py

@ -3,7 +3,6 @@ from datetime import timedelta
from crispy_forms.bootstrap import (Alert, FieldWithButtons, FormActions, from crispy_forms.bootstrap import (Alert, FieldWithButtons, FormActions,
InlineCheckboxes, InlineRadios, InlineCheckboxes, InlineRadios,
StrictButton) StrictButton)
from sapl.crispy_layout_mixin import SaplFormHelper
from crispy_forms.layout import (HTML, Button, Column, Div, Field, Fieldset, from crispy_forms.layout import (HTML, Button, Column, Div, Field, Fieldset,
Layout, Row, Submit) Layout, Row, Submit)
from django import forms from django import forms
@ -23,10 +22,12 @@ from sapl.compilacao.models import (NOTAS_PUBLICIDADE_CHOICES,
TipoTextoArticulado, TipoVide, TipoTextoArticulado, TipoVide,
VeiculoPublicacao, Vide) VeiculoPublicacao, Vide)
from sapl.compilacao.utils import DISPOSITIVO_SELECT_RELATED from sapl.compilacao.utils import DISPOSITIVO_SELECT_RELATED
from sapl.crispy_layout_mixin import SaplFormHelper
from sapl.crispy_layout_mixin import SaplFormLayout, to_column, to_row,\ from sapl.crispy_layout_mixin import SaplFormLayout, to_column, to_row,\
form_actions form_actions
from sapl.utils import YES_NO_CHOICES from sapl.utils import YES_NO_CHOICES
error_messages = { error_messages = {
'required': _('Este campo é obrigatório'), 'required': _('Este campo é obrigatório'),
'invalid': _('URL inválida.') 'invalid': _('URL inválida.')
@ -59,6 +60,13 @@ class TipoTaForm(ModelForm):
widget=forms.RadioSelect(), widget=forms.RadioSelect(),
required=True) required=True)
rodape_global = forms.CharField(
label=TipoTextoArticulado._meta.get_field(
'rodape_global').verbose_name,
widget=forms.Textarea(attrs={'id': 'texto-rico'}),
required=False
)
class Meta: class Meta:
model = TipoTextoArticulado model = TipoTextoArticulado
fields = ['sigla', fields = ['sigla',
@ -66,10 +74,12 @@ class TipoTaForm(ModelForm):
'content_type', 'content_type',
'participacao_social', 'participacao_social',
'publicacao_func', 'publicacao_func',
'perfis' 'perfis',
'rodape_global'
] ]
widgets = {'perfis': widgets.CheckboxSelectMultiple()} widgets = {'perfis': widgets.CheckboxSelectMultiple(),
'rodape_global': forms.Textarea}
def __init__(self, *args, **kwargs): def __init__(self, *args, **kwargs):
@ -84,12 +94,18 @@ class TipoTaForm(ModelForm):
('perfis', 12), ('perfis', 12),
]) ])
row3 = to_row([
('rodape_global', 12),
])
self.helper = SaplFormHelper() self.helper = SaplFormHelper()
self.helper.layout = SaplFormLayout( self.helper.layout = SaplFormLayout(
Fieldset(_('Identificação Básica'), Fieldset(_('Identificação Básica'),
row1, css_class="col-md-12"), row1, css_class="col-md-12"),
Fieldset(_('Funcionalidades'), Fieldset(_('Funcionalidades'),
row2, css_class="col-md-12")) row2, css_class="col-md-12"),
Fieldset(_('Nota de Rodapé Global'),
row3, css_class="col-md-12"))
super(TipoTaForm, self).__init__(*args, **kwargs) super(TipoTaForm, self).__init__(*args, **kwargs)

20
sapl/compilacao/migrations/0011_tipotextoarticulado_rodape_global.py

@ -0,0 +1,20 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.11.20 on 2019-03-26 18:59
from __future__ import unicode_literals
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('compilacao', '0010_auto_20181004_1939'),
]
operations = [
migrations.AddField(
model_name='tipotextoarticulado',
name='rodape_global',
field=models.TextField(default='', help_text='A cada Tipo de Texto Articulado pode ser adicionado uma nota global de rodapé!', verbose_name='Rodapé Global'),
),
]

7
sapl/compilacao/models.py

@ -149,6 +149,13 @@ class TipoTextoArticulado(models.Model):
em edição. em edição.
""")) """))
rodape_global = models.TextField(
verbose_name=_('Rodapé Global'),
help_text=_('A cada Tipo de Texto Articulado pode ser adicionado '
'uma nota global de rodapé!'),
default=''
)
class Meta: class Meta:
verbose_name = _('Tipo de Texto Articulado') verbose_name = _('Tipo de Texto Articulado')
verbose_name_plural = _('Tipos de Texto Articulados') verbose_name_plural = _('Tipos de Texto Articulados')

1
sapl/templates/compilacao/layouts.yaml

@ -45,3 +45,4 @@ TipoTextoArticulado:
{% trans 'Funcionalidaes' %}: {% trans 'Funcionalidaes' %}:
- participacao_social publicacao_func - participacao_social publicacao_func
- perfis - perfis
- rodape_global

3
sapl/templates/compilacao/text_list.html

@ -18,4 +18,7 @@
{% endblock %} {% endblock %}
{% include 'compilacao/text_list__embedded.html'%} {% include 'compilacao/text_list__embedded.html'%}
{{object.tipo_ta.rodape_global|dont_break_out}}
{% endblock base_content %} {% endblock base_content %}

Loading…
Cancel
Save