Skip to content

Commit

Permalink
refactor generate_dsl in map_filter, include arg search_q_object re #…
Browse files Browse the repository at this point in the history
  • Loading branch information
whatisgalen committed Sep 20, 2024
1 parent dd3aacc commit 3abdd15
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 10 deletions.
4 changes: 2 additions & 2 deletions arches/app/search/components/advanced_search.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@

class AdvancedSearch(BaseSearchFilter):

def generate_dsl(self, **kwargs):
def generate_dsl(self, search_query_object, **kwargs):
querysting_params = self.request.GET.get(self.componentname, "")
advanced_filters = JSONDeserializer().deserialize(querysting_params)
datatype_factory = DataTypeFactory()
Expand Down Expand Up @@ -74,7 +74,7 @@ def generate_dsl(self, **kwargs):
return search_query

def append_dsl(self, search_query_object, **kwargs):
dsl = self.generate_dsl()
dsl = self.generate_dsl(search_query_object, kwargs)
search_query_object["query"].add_query(dsl)

def view_data(self):
Expand Down
2 changes: 1 addition & 1 deletion arches/app/search/components/base.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ def __init__(self, request=None, user=None, componentname=None):
self.user = user
self.componentname = componentname

def generate_dsl(self, **kwargs):
def generate_dsl(self, search_query_object, **kwargs):
"""
used to generate ES query dsl
Expand Down
19 changes: 12 additions & 7 deletions arches/app/search/components/map_filter.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,8 @@


class MapFilter(BaseSearchFilter):
def append_dsl(self, search_query_object, **kwargs):

def generate_dsl(self, search_query_object, **kwargs):
permitted_nodegroups = kwargs.get("permitted_nodegroups")
include_provisional = kwargs.get("include_provisional")
search_query = Bool()
Expand Down Expand Up @@ -72,17 +73,21 @@ def append_dsl(self, search_query_object, **kwargs):
)

search_query.filter(Nested(path="geometries", query=spatial_query))
try:
search_query_object[self.componentname][
"search_buffer"
] = feature_geom
except NameError:
logger.info(_("Feature geometry is not defined"))
return search_query

search_query_object["query"].add_query(search_query)
def append_dsl(self, search_query_object, **kwargs):
dsl = self.generate_dsl(search_query_object, kwargs)
search_query_object["query"].add_query(dsl)

if self.componentname not in search_query_object:
search_query_object[self.componentname] = {}

try:
search_query_object[self.componentname]["search_buffer"] = feature_geom
except NameError:
logger.info(_("Feature geometry is not defined"))


def _buffer(geojson, width=0, unit="ft"):
geojson = JSONSerializer().serialize(geojson)
Expand Down

0 comments on commit 3abdd15

Please sign in to comment.