Browse Source

Fix #3022 - norma

pull/3025/head
João Rodrigues 6 years ago
parent
commit
442e71d5a8
  1. 52
      sapl/norma/forms.py

52
sapl/norma/forms.py

@ -1,27 +1,29 @@
import django_filters
import logging import logging
from sapl.crispy_layout_mixin import SaplFormHelper
from crispy_forms.layout import Fieldset, Layout from crispy_forms.layout import Fieldset, Layout
from django import forms from django import forms
from django.core.exceptions import ObjectDoesNotExist, ValidationError from django.core.exceptions import ObjectDoesNotExist, ValidationError
from django.db import models from django.db import models
from django.db.models import Q from django.db.models import Q
from django.forms import ModelForm, widgets, ModelChoiceField from django.forms import ModelChoiceField, ModelForm, widgets
from django.utils import timezone from django.utils import timezone
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, SaplFormHelper, to_row
from sapl.materia.forms import choice_anos_com_materias from sapl.materia.forms import choice_anos_com_materias
from sapl.materia.models import MateriaLegislativa, TipoMateriaLegislativa from sapl.materia.models import (MateriaLegislativa,
TipoMateriaLegislativa)
from sapl.settings import MAX_DOC_UPLOAD_SIZE from sapl.settings import MAX_DOC_UPLOAD_SIZE
from sapl.utils import NormaPesquisaOrderingFilter, RangeWidgetOverride, \ from sapl.utils import (ANO_CHOICES, choice_anos_com_normas,
choice_anos_com_normas, FilterOverridesMetaMixin, FileFieldCheckMixin, ANO_CHOICES FileFieldCheckMixin, FilterOverridesMetaMixin,
NormaPesquisaOrderingFilter, RangeWidgetOverride,
validar_arquivo)
from .models import (AnexoNormaJuridica, AssuntoNorma, NormaJuridica, NormaRelacionada, from .models import (AnexoNormaJuridica, AssuntoNorma, AutoriaNorma,
TipoNormaJuridica, AutoriaNorma) NormaJuridica, NormaRelacionada, TipoNormaJuridica)
def get_esferas(): def get_esferas():
@ -201,17 +203,7 @@ class NormaJuridicaForm(FileFieldCheckMixin, ModelForm):
texto_integral = self.cleaned_data.get('texto_integral', False) texto_integral = self.cleaned_data.get('texto_integral', False)
if texto_integral: if texto_integral:
if len(texto_integral.name) > 200: validar_arquivo(texto_integral, "Texto Integral")
raise ValidationError(
"Certifique-se de que o nome do arquivo no campo 'Texto Integral' tenha no máximo 200 caracteres " \
"(ele possui {})".format(len(texto_integral.name))
)
if texto_integral.size > MAX_DOC_UPLOAD_SIZE:
raise ValidationError(
"O arquivo Texto Integral deve ser menor que {0:.1f} mb, o tamanho atual desse arquivo é {1:.1f} mb".format(
(MAX_DOC_UPLOAD_SIZE/1024)/1024, (texto_integral.size/1024)/1024
)
)
return texto_integral return texto_integral
@ -299,23 +291,7 @@ class AnexoNormaJuridicaForm(FileFieldCheckMixin, ModelForm):
anexo_arquivo = self.cleaned_data.get('anexo_arquivo', False) anexo_arquivo = self.cleaned_data.get('anexo_arquivo', False)
if anexo_arquivo: if anexo_arquivo:
if len(anexo_arquivo.name) > 200: validar_arquivo(anexo_arquivo, "Arquivo Anexo")
raise ValidationError(
"Certifique-se de que o nome do arquivo no " \
"campo 'Arquivo Anexo' tenha no máximo 200 " \
"caracteres (ele possui {})".format(
len(anexo_arquivo.name)
)
)
if anexo_arquivo.size > MAX_DOC_UPLOAD_SIZE:
raise ValidationError(
"O Arquivo Anexo deve ser menor que " \
"{0:.1f} mb, o tamanho atual desse arquivo é " \
"{1:.1f} mb".format(
(MAX_DOC_UPLOAD_SIZE/1024)/1024,
(anexo_arquivo.size/1024)/1024
)
)
return cleaned_data return cleaned_data

Loading…
Cancel
Save