diff options
Diffstat (limited to 'ishtar_common')
-rw-r--r-- | ishtar_common/forms.py | 26 | ||||
-rw-r--r-- | ishtar_common/models_common.py | 37 | ||||
-rw-r--r-- | ishtar_common/views_item.py | 7 |
3 files changed, 29 insertions, 41 deletions
diff --git a/ishtar_common/forms.py b/ishtar_common/forms.py index c59978730..ec2603bb9 100644 --- a/ishtar_common/forms.py +++ b/ishtar_common/forms.py @@ -958,11 +958,8 @@ class HistorySelect(CustomForm, TableSelect): ), required=False, ) - created_before = forms.DateField( - label=_("Created before"), widget=DatePicker, required=False - ) - created_after = forms.DateField( - label=_("Created after"), widget=DatePicker, required=False + created = forms.DateField( + label=_("Created"), widget=DatePicker, required=False ) history_modifier = forms.IntegerField( label=_("Last modified by"), @@ -971,22 +968,17 @@ class HistorySelect(CustomForm, TableSelect): ), required=False, ) - modified_before = forms.DateField( - label=_("Modified before"), widget=DatePicker, required=False - ) - modified_after = forms.DateField( - label=_("Modified after"), widget=DatePicker, required=False + modified = forms.DateField( + label=_("Modified"), widget=DatePicker, required=False ) locked = forms.NullBooleanField(label=_("Is locked?")) _explicit_ordering = True CURRENT_FIELDS = [ "history_creator", - "created_before", - "created_after", + "created", "history_modifier", - "modified_before", - "modified_after", + "modified", "locked", ] @@ -1370,16 +1362,14 @@ class GeoItemSelect(DocumentItemSelect): # all geo item can have documents geodata__data_type = forms.ChoiceField(label=_("Geo - Data type"), choices=[]) geodata__origin = forms.ChoiceField(label=_("Geo - Origin"), choices=[]) geodata__provider = forms.ChoiceField(label=_("Geo - Provider"), choices=[]) - geodata__z__gt = forms.FloatField(label=_("Geo - Z - higher than")) - geodata__z__lt = forms.FloatField(label=_("Geo - Z - lower than")) + geodata__z = forms.FloatField(label=_("Geo - Z")) geodata__comment = forms.CharField(label=_("Geo - Comment"), max_length=500) CURRENT_FIELDS = [ "geodata__name", "geodata__data_type", "geodata__origin", "geodata__provider", - "geodata__z__gt", - "geodata__z__lt", + "geodata__z", "geodata__comment", ] + DocumentItemSelect.CURRENT_FIELDS _explicit_ordering = True diff --git a/ishtar_common/models_common.py b/ishtar_common/models_common.py index 6d3270db4..ae4b5a64b 100644 --- a/ishtar_common/models_common.py +++ b/ishtar_common/models_common.py @@ -881,6 +881,7 @@ class FullSearch(models.Model): ALT_NAMES = {} BOOL_FIELDS = [] + NUMBER_FIELDS = [] REVERSED_BOOL_FIELDS = [] CALLABLE_BOOL_FIELDS = [] BASE_SEARCH_VECTORS = [] @@ -1565,10 +1566,8 @@ class BaseHistorizedItem( ) DATED_FIELDS = [ - "created__gte", - "created__lte", - "last_modified__gte", - "last_modified__lte", + "created", + "last_modified", ] BOOL_FIELDS = ["locked"] @@ -1582,19 +1581,13 @@ class BaseHistorizedItem( pgettext_lazy("key for text search", "modified-by"), "history_modifier__ishtaruser__person__cached_label__iexact", ), - "created_before": SearchAltName( - pgettext_lazy("key for text search", "created-before"), - "created__lte", + "created": SearchAltName( + pgettext_lazy("key for text search", "created"), + "created", ), - "created_after": SearchAltName( - pgettext_lazy("key for text search", "created-after"), "created__gte" - ), - "modified_before": SearchAltName( - pgettext_lazy("key for text search", "modified-before"), - "last_modified__lte", - ), - "modified_after": SearchAltName( - pgettext_lazy("key for text search", "modified-after"), "last_modified__gte" + "modified": SearchAltName( + pgettext_lazy("key for text search", "modified"), + "last_modified", ), "locked": SearchAltName( pgettext_lazy("key for text search", "locked"), "locked" @@ -2928,13 +2921,9 @@ class GeographicItem(models.Model): "geodata__provider": SearchAltName( pgettext_lazy("key for text search", "geo-provider"), "geodata__provider__label__iexact" ), - "geodata__z__gt": SearchAltName( - pgettext_lazy("key for text search", "z-higher"), - "geodata__cached_z__gte" - ), - "geodata__z__lt": SearchAltName( - pgettext_lazy("key for text search", "z-lower"), - "geodata__cached_z__lte" + "geodata__z": SearchAltName( + pgettext_lazy("key for text search", "z"), + "geodata__cached_z" ), "geodata__comment": SearchAltName( pgettext_lazy("key for text search", "geo-comment"), "geodata__comment__iexact" @@ -4193,6 +4182,8 @@ class DynamicRequest: class GeoItem(GeographicItem): + NUMBER_FIELDS = ["geodata__cached_z"] + # gis - to be removed GEO_SOURCE = (("T", _("Town")), ("P", _("Precise")), ("M", _("Polygon"))) diff --git a/ishtar_common/views_item.py b/ishtar_common/views_item.py index a622fdb9f..03e4a8836 100644 --- a/ishtar_common/views_item.py +++ b/ishtar_common/views_item.py @@ -1056,6 +1056,11 @@ def _manage_date(k, dct): values = dct[k].split(";") results = [] for value in values: + # TODO: manage '*/10/2024' searches? + if value.replace('"', "").replace("'", "") == "*": + dct.pop(k) + dct[k + "__isnull"] = False + return value, date_type = __manage_relative_search(value) has_today = False for today in TODAYS: @@ -1112,6 +1117,8 @@ def _manage_dated_fields(dated_fields, dct): if not res: continue for k in res: + if k not in dct: + continue if not dct[k]: dct.pop(k) continue |