diff options
Diffstat (limited to 'archaeological_finds/models_finds.py')
| -rw-r--r-- | archaeological_finds/models_finds.py | 24 | 
1 files changed, 24 insertions, 0 deletions
| diff --git a/archaeological_finds/models_finds.py b/archaeological_finds/models_finds.py index 1f2c692e1..e53706e9a 100644 --- a/archaeological_finds/models_finds.py +++ b/archaeological_finds/models_finds.py @@ -270,6 +270,20 @@ post_save.connect(post_save_cache, sender=ObjectType)  post_delete.connect(post_save_cache, sender=ObjectType) +class FunctionalArea(HierarchicalType): +    class Meta: +        verbose_name = _("Functional area") +        verbose_name_plural = _("Functional areas") +        ordering = ( +            "parent__label", +            "label", +        ) + + +post_save.connect(post_save_cache, sender=FunctionalArea) +post_delete.connect(post_save_cache, sender=FunctionalArea) + +  class ObjectTypeQualityType(GeneralType):      order = models.IntegerField(_("Order"), default=10) @@ -1562,6 +1576,10 @@ class Find(              pgettext_lazy("key for text search", "cultural-attribution"),              "cultural_attributions__label__iexact",          ), +        "functional_areas": SearchAltName( +            pgettext_lazy("key for text search", "functional-area"), +            "functional_areas__label__iexact", +        ),      }      ALT_NAMES.update(BaseHistorizedItem.ALT_NAMES)      ALT_NAMES.update(DocumentItem.ALT_NAMES) @@ -1683,6 +1701,7 @@ class Find(          "material_types",          "datings",          "object_types", +        "functional_areas",          "integrities",          "remarkabilities",          "communicabilities", @@ -1694,6 +1713,7 @@ class Find(      GET_VALUES_EXTRA_TYPES = ValueGetter.GET_VALUES_EXCLUDE_FIELDS + [          "material_types",          "object_types", +        "functional_areas",          "integrities",          "remarkabilities",          "communicabilities", @@ -1801,6 +1821,10 @@ class Find(          blank=True,          null=True,      ) +    functional_areas = models.ManyToManyField( +        FunctionalArea, verbose_name=_("Functional area"), related_name="find", +        blank=True +    )      integrities = models.ManyToManyField(          IntegrityType,          verbose_name=_("Integrity / interest"), | 
