From 6354768f042feca7de95fd3869b20f6b1233ff6a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=A3o=20Rodrigues?= Date: Wed, 23 Oct 2019 15:37:59 -0300 Subject: [PATCH] Fix #3022 - AudienciaPublica --- sapl/audiencia/forms.py | 42 +++++++++++++++---- .../migrations/0013_auto_20191023_1522.py | 32 ++++++++++++++ sapl/audiencia/models.py | 6 +-- 3 files changed, 68 insertions(+), 12 deletions(-) create mode 100644 sapl/audiencia/migrations/0013_auto_20191023_1522.py diff --git a/sapl/audiencia/forms.py b/sapl/audiencia/forms.py index d62900df6..280d089ab 100755 --- a/sapl/audiencia/forms.py +++ b/sapl/audiencia/forms.py @@ -119,17 +119,41 @@ class AudienciaForm(FileFieldCheckMixin, forms.ModelForm): upload_ata = self.cleaned_data.get('upload_ata', False) upload_anexo = self.cleaned_data.get('upload_anexo', False) - if upload_pauta and upload_pauta.size > MAX_DOC_UPLOAD_SIZE: - raise ValidationError("O arquivo Pauta da Audiência Pública deve ser menor que {0:.1f} mb, o tamanho atual desse arquivo é {1:.1f} mb" \ - .format((MAX_DOC_UPLOAD_SIZE/1024)/1024, (upload_pauta.size/1024)/1024)) + if upload_pauta: + if len(upload_pauta.name) > 200: + raise ValidationError( + "Certifique-se de que o nome do arquivo no campo 'Pauta da Audiência Pública' tenha no máximo 200 " \ + "caracteres (ele possui {})".format(len(upload_pauta.name)) + ) + if upload_pauta.size > MAX_DOC_UPLOAD_SIZE: + raise ValidationError( + "O arquivo Pauta da Audiência Pública deve ser menor que {0:.1f} mb, o tamanho atual desse arquivo é " \ + "{1:.1f} mb".format((MAX_DOC_UPLOAD_SIZE/1024)/1024, (upload_pauta.size/1024)/1024) + ) - if upload_ata and upload_ata.size > MAX_DOC_UPLOAD_SIZE: - raise ValidationError("O arquivo Ata da Audiência Pública deve ser menor que {0:.1f} mb, o tamanho atual desse arquivo é {1:.1f} mb" \ - .format((MAX_DOC_UPLOAD_SIZE/1024)/1024, (upload_ata.size/1024)/1024)) + if upload_ata: + if len(upload_ata.name) > 200: + raise ValidationError( + "Certifique-se de que o nome do arquivo no campo 'Ata da Audiência Pública' tenha no máximo 200 " \ + "caracteres (ele possui {})".format(len(upload_ata.name)) + ) + if upload_ata.size > MAX_DOC_UPLOAD_SIZE: + raise ValidationError( + "O arquivo Ata da Audiência Pública deve ser menor que {0:.1f} mb, o tamanho atual desse arquivo é " \ + "{1:.1f} mb".format((MAX_DOC_UPLOAD_SIZE/1024)/1024, (upload_ata.size/1024)/1024) + ) - if upload_anexo and upload_anexo.size > MAX_DOC_UPLOAD_SIZE: - raise ValidationError("O arquivo Anexo da Audiência Pública deve ser menor que {0:.1f} mb, o tamanho atual desse arquivo é {1:.1f} mb" \ - .format((MAX_DOC_UPLOAD_SIZE/1024)/1024, (upload_anexo.size/1024)/1024)) + if upload_anexo: + if len(upload_anexo.name) > 200: + raise ValidationError( + "Certifique-se de que o nome do arquivo no campo 'Anexo da Audiência Pública' tenha no máximo 200 " \ + "caracteres (ele possui {})".format(len(upload_anexo.name)) + ) + if upload_anexo.size > MAX_DOC_UPLOAD_SIZE: + raise ValidationError( + "O arquivo Anexo da Audiência Pública deve ser menor que {0:.1f} mb, o tamanho atual desse arquivo é " \ + "{1:.1f} mb".format((MAX_DOC_UPLOAD_SIZE/1024)/1024, (upload_anexo.size/1024)/1024) + ) return cleaned_data diff --git a/sapl/audiencia/migrations/0013_auto_20191023_1522.py b/sapl/audiencia/migrations/0013_auto_20191023_1522.py new file mode 100644 index 000000000..63886a25f --- /dev/null +++ b/sapl/audiencia/migrations/0013_auto_20191023_1522.py @@ -0,0 +1,32 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.11.20 on 2019-10-23 18:22 +from __future__ import unicode_literals + +from django.db import migrations, models +import sapl.audiencia.models +import sapl.utils + + +class Migration(migrations.Migration): + + dependencies = [ + ('audiencia', '0012_auto_20191001_1115'), + ] + + operations = [ + migrations.AlterField( + model_name='audienciapublica', + name='upload_anexo', + field=models.FileField(blank=True, max_length=300, null=True, storage=sapl.utils.OverwriteStorage(), upload_to=sapl.audiencia.models.anexo_upload_path, verbose_name='Anexo da Audiência Pública'), + ), + migrations.AlterField( + model_name='audienciapublica', + name='upload_ata', + field=models.FileField(blank=True, max_length=300, null=True, storage=sapl.utils.OverwriteStorage(), upload_to=sapl.audiencia.models.ata_upload_path, validators=[sapl.utils.restringe_tipos_de_arquivo_txt], verbose_name='Ata da Audiência Pública'), + ), + migrations.AlterField( + model_name='audienciapublica', + name='upload_pauta', + field=models.FileField(blank=True, max_length=300, null=True, storage=sapl.utils.OverwriteStorage(), upload_to=sapl.audiencia.models.pauta_upload_path, validators=[sapl.utils.restringe_tipos_de_arquivo_txt], verbose_name='Pauta da Audiência Pública'), + ), + ] diff --git a/sapl/audiencia/models.py b/sapl/audiencia/models.py index 22a1accc9..4299be736 100755 --- a/sapl/audiencia/models.py +++ b/sapl/audiencia/models.py @@ -87,7 +87,7 @@ class AudienciaPublica(models.Model): max_length=150, blank=True, verbose_name=_('URL Arquivo Vídeo (Formatos MP4 / FLV / WebM)')) upload_pauta = models.FileField( - max_length=200, + max_length=300, blank=True, null=True, upload_to=pauta_upload_path, @@ -95,7 +95,7 @@ class AudienciaPublica(models.Model): verbose_name=_('Pauta da Audiência Pública'), validators=[restringe_tipos_de_arquivo_txt]) upload_ata = models.FileField( - max_length=200, + max_length=300, blank=True, null=True, upload_to=ata_upload_path, @@ -103,7 +103,7 @@ class AudienciaPublica(models.Model): storage=OverwriteStorage(), validators=[restringe_tipos_de_arquivo_txt]) upload_anexo = models.FileField( - max_length=200, + max_length=300, blank=True, null=True, upload_to=anexo_upload_path,