diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2024-09-20 10:30:42 +0200 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2024-09-20 15:47:14 +0200 |
commit | 14b2433f8b04d11c2c3ad721997289ffa0777de3 (patch) | |
tree | 67b2f6bdc05b81979e59690e8128cb97c5b0dbfe | |
parent | fc50391805b08914e740c518301dd16087b00028 (diff) | |
download | Ishtar-14b2433f8b04d11c2c3ad721997289ffa0777de3.tar.bz2 Ishtar-14b2433f8b04d11c2c3ad721997289ffa0777de3.zip |
✨ archaeological sites search: add new fields
-rw-r--r-- | archaeological_operations/forms.py | 20 | ||||
-rw-r--r-- | archaeological_operations/models.py | 31 | ||||
-rw-r--r-- | ishtar_common/views_item.py | 5 |
3 files changed, 54 insertions, 2 deletions
diff --git a/archaeological_operations/forms.py b/archaeological_operations/forms.py index 1dbafbd14..18e588d5a 100644 --- a/archaeological_operations/forms.py +++ b/archaeological_operations/forms.py @@ -1200,14 +1200,23 @@ class SiteSelect(GeoItemSelect): name = forms.CharField(label=_("Name"), max_length=200, required=False) other_reference = forms.CharField(label=_("Other reference"), max_length=200, required=False) + types = forms.ChoiceField(label=_("Types"), choices=[], required=False) + discoverer = forms.IntegerField( + widget=widgets.JQueryAutoComplete(reverse_lazy('autocomplete-person'), associated_model=Person), + label=_("Discoverer")) periods = forms.ChoiceField(label=_("Periods"), choices=[], required=False) remains = forms.ChoiceField(label=_("Remains"), choices=[], required=False) cultural_attributions = forms.ChoiceField( label=_("Cultural attribution"), choices=[], required=False) + discovery_status = forms.ChoiceField(label=_("Discovery status"), choices=[], required=False) + current_status = forms.ChoiceField(label=_("Current status"), choices=[], required=False) + nature_of_site = forms.ChoiceField(label=_("Nature of site"), choices=[], required=False) + interpretation_level = forms.ChoiceField(label=_("Interpretation level"), choices=[], required=False) towns = get_town_field() towns__areas = forms.ChoiceField(label=_("Areas"), choices=[]) - comment = forms.CharField(label=_("Comment"), max_length=200, - required=False) + description = forms.CharField(label=_("Description"), max_length=200, required=False) + public_description = forms.CharField(label=_("Public description"), max_length=200, required=False) + comment = forms.CharField(label=_("Comment"), max_length=200, required=False) top_operation = forms.IntegerField( label=_("Top operation"), required=False, widget=widgets.JQueryAutoComplete( @@ -1220,6 +1229,8 @@ class SiteSelect(GeoItemSelect): reverse_lazy('autocomplete-operation'), associated_model=models.Operation), validators=[valid_id(models.Operation)]) + precise_locality = forms.CharField(label=_("Precise locality"), max_length=200, + required=False) locality_ngi = forms.CharField( label=_("National Geographic Institute locality"), max_length=200, required=False) @@ -1247,7 +1258,12 @@ class SiteSelect(GeoItemSelect): TYPES = [ FieldType('periods', models.Period), FieldType('remains', models.RemainType), + FieldType('types', models.SiteType), + FieldType('current_status', models.SiteCurrentStatusType), + FieldType('discovery_status', models.SiteDiscoveryStatusType), FieldType('cultural_attributions', models.CulturalAttributionType), + FieldType('nature_of_site', models.NatureOfSiteType), + FieldType('interpretation_level', models.InterpretationLevelType), FieldType('towns__areas', Area), ] + GeoItemSelect.TYPES diff --git a/archaeological_operations/models.py b/archaeological_operations/models.py index 5ccaf9b23..2f3cae888 100644 --- a/archaeological_operations/models.py +++ b/archaeological_operations/models.py @@ -441,6 +441,25 @@ class ArchaeologicalSite( pgettext_lazy("key for text search", "other-reference"), "other_reference__iexact", ), + "types": SearchAltName( + pgettext_lazy("key for text search", "type"), "types__label__iexact" + ), + "discovery_status": SearchAltName( + pgettext_lazy("key for text search", "discovery-status"), + "discovery_status__label__iexact" + ), + "current_status": SearchAltName( + pgettext_lazy("key for text search", "current-status"), + "current_status__label__iexact" + ), + "nature_of_site": SearchAltName( + pgettext_lazy("key for text search", "nature"), + "nature_of_site__label__iexact" + ), + "interpretation_level": SearchAltName( + pgettext_lazy("key for text search", "interpretation-level"), + "interpretation_level__label__iexact" + ), "periods": SearchAltName( pgettext_lazy("key for text search", "period"), "periods__label__iexact" ), @@ -453,9 +472,21 @@ class ArchaeologicalSite( "towns__areas": SearchAltName( pgettext_lazy("key for text search", "area"), "towns__areas__label__iexact" ), + "description": SearchAltName( + pgettext_lazy("key for text search", "description"), "description__iexact" + ), + "discoverer": SearchAltName( + pgettext_lazy("key for text search", "discoverer"), "discoverer__cached_label__iexact", + ), + "public_description": SearchAltName( + pgettext_lazy("key for text search", "public-description"), "public_description__iexact" + ), "comment": SearchAltName( pgettext_lazy("key for text search", "comment"), "comment__iexact" ), + "precise_locality": SearchAltName( + pgettext_lazy("key for text search", "locality"), "precise_locality__iexact" + ), "locality_ngi": SearchAltName( pgettext_lazy("key for text search", "locality-ngi"), "locality_ngi__iexact" ), diff --git a/ishtar_common/views_item.py b/ishtar_common/views_item.py index 052723955..6c95b130c 100644 --- a/ishtar_common/views_item.py +++ b/ishtar_common/views_item.py @@ -120,6 +120,11 @@ LIST_FIELDS = { # key: hierarchic depth "colors": HIERARCHIC_LEVELS, "development_type": HIERARCHIC_LEVELS, "monitoring_justification": HIERARCHIC_LEVELS, + "types": HIERARCHIC_LEVELS, + "discovery_status": 0, + "current_status": 0, + "nature_of_site": 0, + "interpretation_level": 0, "museum_inventory_marking_presence": 0, "museum_marking_type": 0, "museum_collection": 0, |