diff --git a/sigi/apps/convenios/models.py b/sigi/apps/convenios/models.py index 9313394..5be3020 100644 --- a/sigi/apps/convenios/models.py +++ b/sigi/apps/convenios/models.py @@ -422,14 +422,6 @@ class Convenio(models.Model): ) ) } - if self.data_retorno_assinatura is None: - errors["data_retorno_assinatura"] = ValidationError( - _("Obrigatório para convênios vigentes") - ) - if self.data_termino_vigencia is None: - errors["data_termino_vigencia"] = ValidationError( - _("Obrigatório para convênios vigentes") - ) raise ValidationError(errors) else: if ( @@ -444,16 +436,7 @@ class Convenio(models.Model): ) ) } - if self.data_retorno_assinatura is not None: - errors["data_retorno_assinatura"] = ValidationError( - _("Não pode ser preenchido para convênios pendentes") - ) - if self.data_termino_vigencia is not None: - errors["data_termino_vigencia"] = ValidationError( - _("Não pode ser preenchido para convênios pendentes") - ) raise ValidationError(errors) - return super().clean() def save(self, *args, **kwargs): diff --git a/sigi/apps/utils/templatetags/sigi_tags.py b/sigi/apps/utils/templatetags/sigi_tags.py index a2e7d31..5bdb000 100644 --- a/sigi/apps/utils/templatetags/sigi_tags.py +++ b/sigi/apps/utils/templatetags/sigi_tags.py @@ -48,3 +48,8 @@ def valueof(obj, attr_name): for part in attr_name.split("__"): obj = getattr(obj, part) return str(obj) + + +@register.filter +def has_errors(obj): + return any([obj.form.has_error(field_name) for field_name in obj.fields]) diff --git a/sigi/templates/admin/tabs_change_form.html b/sigi/templates/admin/tabs_change_form.html index c7c4d21..b1dea14 100644 --- a/sigi/templates/admin/tabs_change_form.html +++ b/sigi/templates/admin/tabs_change_form.html @@ -1,5 +1,5 @@ {% extends "admin/change_form.html" %} -{% load i18n %} +{% load i18n sigi_tags %} {% block extrastyle %} {{ block.super }} @@ -14,12 +14,22 @@ {% endblock %} {% block form_top %} +

+ {% if errors|length > 0 %} + {% translate "As abas com erro estão marcadas com " %} + error + {% endif %} +

+