|
@ -1,9 +1,7 @@ |
|
|
|
|
|
from datetime import datetime |
|
|
import re |
|
|
import re |
|
|
import django_filters |
|
|
|
|
|
|
|
|
|
|
|
from crispy_forms.layout import Button, Fieldset, HTML, Layout |
|
|
from crispy_forms.layout import Button, Fieldset, HTML, Layout |
|
|
from datetime import datetime |
|
|
|
|
|
|
|
|
|
|
|
from django import forms |
|
|
from django import forms |
|
|
from django.contrib.contenttypes.models import ContentType |
|
|
from django.contrib.contenttypes.models import ContentType |
|
|
from django.core.exceptions import ObjectDoesNotExist, ValidationError |
|
|
from django.core.exceptions import ObjectDoesNotExist, ValidationError |
|
@ -12,6 +10,7 @@ from django.db.models import Q |
|
|
from django.forms import ModelForm |
|
|
from django.forms import ModelForm |
|
|
from django.forms.widgets import CheckboxSelectMultiple |
|
|
from django.forms.widgets import CheckboxSelectMultiple |
|
|
from django.utils.translation import ugettext_lazy as _ |
|
|
from django.utils.translation import ugettext_lazy as _ |
|
|
|
|
|
import django_filters |
|
|
|
|
|
|
|
|
from sapl.base.models import Autor, TipoAutor |
|
|
from sapl.base.models import Autor, TipoAutor |
|
|
from sapl.crispy_layout_mixin import (form_actions, to_row, |
|
|
from sapl.crispy_layout_mixin import (form_actions, to_row, |
|
@ -87,8 +86,7 @@ class SessaoPlenariaForm(FileFieldCheckMixin, ModelForm): |
|
|
encerramento_entre_leg = True |
|
|
encerramento_entre_leg = True |
|
|
encerramento_entre_sl = True |
|
|
encerramento_entre_sl = True |
|
|
|
|
|
|
|
|
|
|
|
# Sessões Extraordinárias podem estar fora da sessão legislativa |
|
|
## Sessões Extraordinárias podem estar fora da sessão legislativa |
|
|
|
|
|
descricao_tipo = tipo.nome.lower() |
|
|
descricao_tipo = tipo.nome.lower() |
|
|
if "extraordinária" in descricao_tipo or "especial" in descricao_tipo: |
|
|
if "extraordinária" in descricao_tipo or "especial" in descricao_tipo: |
|
|
# Ignora checagem de limites para Sessão Legislativa |
|
|
# Ignora checagem de limites para Sessão Legislativa |
|
@ -105,7 +103,6 @@ class SessaoPlenariaForm(FileFieldCheckMixin, ModelForm): |
|
|
"Plenária deve estar compreendida entre a " |
|
|
"Plenária deve estar compreendida entre a " |
|
|
"data de abertura e encerramento da Sessão Legislativa") |
|
|
"data de abertura e encerramento da Sessão Legislativa") |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
upload_pauta = self.cleaned_data.get('upload_pauta', False) |
|
|
upload_pauta = self.cleaned_data.get('upload_pauta', False) |
|
|
upload_ata = self.cleaned_data.get('upload_ata', False) |
|
|
upload_ata = self.cleaned_data.get('upload_ata', False) |
|
|
upload_anexo = self.cleaned_data.get('upload_anexo', False) |
|
|
upload_anexo = self.cleaned_data.get('upload_anexo', False) |
|
@ -617,7 +614,8 @@ class OradorForm(ModelForm): |
|
|
def __init__(self, *args, **kwargs): |
|
|
def __init__(self, *args, **kwargs): |
|
|
super().__init__(*args, **kwargs) |
|
|
super().__init__(*args, **kwargs) |
|
|
self.fields['parlamentar'].queryset = \ |
|
|
self.fields['parlamentar'].queryset = \ |
|
|
Parlamentar.objects.filter(mandato__legislatura__sessaoplenaria=self.initial['id_sessao'], ativo=True).order_by('nome_parlamentar') |
|
|
Parlamentar.objects.filter( |
|
|
|
|
|
mandato__legislatura__sessaoplenaria=self.initial['id_sessao'], ativo=True).order_by('nome_parlamentar') |
|
|
|
|
|
|
|
|
def clean(self): |
|
|
def clean(self): |
|
|
super(OradorForm, self).clean() |
|
|
super(OradorForm, self).clean() |
|
@ -655,7 +653,8 @@ class OradorExpedienteForm(ModelForm): |
|
|
def __init__(self, *args, **kwargs): |
|
|
def __init__(self, *args, **kwargs): |
|
|
super().__init__(*args, **kwargs) |
|
|
super().__init__(*args, **kwargs) |
|
|
self.fields['parlamentar'].queryset = \ |
|
|
self.fields['parlamentar'].queryset = \ |
|
|
Parlamentar.objects.filter(mandato__legislatura__sessaoplenaria=self.initial['id_sessao'], ativo=True).order_by('nome_parlamentar') |
|
|
Parlamentar.objects.filter( |
|
|
|
|
|
mandato__legislatura__sessaoplenaria=self.initial['id_sessao'], ativo=True).order_by('nome_parlamentar') |
|
|
|
|
|
|
|
|
def clean(self): |
|
|
def clean(self): |
|
|
super(OradorExpedienteForm, self).clean() |
|
|
super(OradorExpedienteForm, self).clean() |
|
@ -691,7 +690,8 @@ class OradorOrdemDiaForm(ModelForm): |
|
|
def __init__(self, *args, **kwargs): |
|
|
def __init__(self, *args, **kwargs): |
|
|
super().__init__(*args, **kwargs) |
|
|
super().__init__(*args, **kwargs) |
|
|
self.fields['parlamentar'].queryset = \ |
|
|
self.fields['parlamentar'].queryset = \ |
|
|
Parlamentar.objects.filter(mandato__legislatura__sessaoplenaria=self.initial['id_sessao'], ativo=True).order_by('nome_parlamentar') |
|
|
Parlamentar.objects.filter( |
|
|
|
|
|
mandato__legislatura__sessaoplenaria=self.initial['id_sessao'], ativo=True).order_by('nome_parlamentar') |
|
|
|
|
|
|
|
|
def clean(self): |
|
|
def clean(self): |
|
|
super(OradorOrdemDiaForm, self).clean() |
|
|
super(OradorOrdemDiaForm, self).clean() |
|
@ -987,7 +987,8 @@ class JustificativaAusenciaForm(ModelForm): |
|
|
|
|
|
|
|
|
class OrdemExpedienteLeituraForm(forms.ModelForm): |
|
|
class OrdemExpedienteLeituraForm(forms.ModelForm): |
|
|
|
|
|
|
|
|
observacao = forms.CharField(required=False, label='Observação', widget=forms.Textarea,) |
|
|
observacao = forms.CharField( |
|
|
|
|
|
required=False, label='Observação', widget=forms.Textarea,) |
|
|
|
|
|
|
|
|
class Meta: |
|
|
class Meta: |
|
|
model = RegistroLeitura |
|
|
model = RegistroLeitura |
|
|