From a320ba7f053e69b87605517dda152b2cbbf3bca9 Mon Sep 17 00:00:00 2001 From: Eduardo Calil Date: Fri, 15 Jan 2016 12:47:14 -0200 Subject: [PATCH] =?UTF-8?q?Fix=20new=20bugs=20in=20Filia=C3=A7=C3=A3o=20Pa?= =?UTF-8?q?rtid=C3=A1ria?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- parlamentares/views.py | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/parlamentares/views.py b/parlamentares/views.py index 9eb0a1a09..1a90a8e44 100644 --- a/parlamentares/views.py +++ b/parlamentares/views.py @@ -879,6 +879,14 @@ class FiliacaoView(FormMixin, GenericView): de outro período de filiação" return self.error_message(parlamentar, form, mensagem) + if (data_desfiliacao and + data_filiacao <= data_init and + data_desfiliacao >= data_fim): + mensagem = "A data de filiação e\ + desfiliação não podem estar no intervalo\ + de outro período de filiação" + return self.error_message(parlamentar, form, mensagem) + # Salva a nova filiação caso tudo esteja correto else: filiacao = form.save(commit=False) @@ -938,6 +946,10 @@ class FiliacaoEditView(FormMixin, GenericView): parlamentar=parlamentar, data_desfiliacao=None) + if 'Excluir' in request.POST: + filiacao.delete() + return self.form_valid(form) + # Vê se o candidato já se filiou alguma vez a algum partido if not candidato_filiado: filiacao = form.save(commit=False) @@ -986,6 +998,15 @@ class FiliacaoEditView(FormMixin, GenericView): return self.error_message(parlamentar, form, mensagem) + if (data_desfiliacao and + data_filiacao <= data_init and + data_desfiliacao >= data_fim): + mensagem = "A data de filiação e\ + desfiliação não podem estar no intervalo\ + de outro período de filiação" + return self.error_message(parlamentar, + form, + mensagem) if 'Salvar' in request.POST: filiacao.save()