diff --git a/sapl/sessao/forms.py b/sapl/sessao/forms.py index 06dd40830..cbc139e71 100644 --- a/sapl/sessao/forms.py +++ b/sapl/sessao/forms.py @@ -112,12 +112,23 @@ class BancadaForm(ModelForm): if not self.is_valid(): return self.cleaned_data - if self.cleaned_data['data_extincao']: - if (self.cleaned_data['data_extincao'] < - self.cleaned_data['data_criacao']): - msg = _('Data de extinção não pode ser menor que a de criação') - raise ValidationError(msg) - return self.cleaned_data + data = self.cleaned_data + + legislatura = data['legislatura'] + + data_criacao = data['data_criacao'] + if data_criacao: + if (data_criacao < legislatura.data_inicio or + data_criacao > legislatura.data_fim): + raise ValidationError(_("Data de criação da bancada fora do intervalo" + " de legislatura informada")) + + data_extincao = data['data_extincao'] + if data_extincao: + if (data_extincao < legislatura.data_inicio or + data_extincao > legislatura.data_fim): + raise ValidationError(_("Data fim da bancada fora do intervalo de" + " legislatura informada")) @transaction.atomic def save(self, commit=True):