From 9b3f2e0d6523958742256840266119395af860c3 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Mon, 10 Mar 2025 18:22:39 +0100 Subject: ✨ wizard: manage search query encoded in urls MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ishtar_common/wizards.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'ishtar_common') diff --git a/ishtar_common/wizards.py b/ishtar_common/wizards.py index df834ac21..ddf701ce7 100644 --- a/ishtar_common/wizards.py +++ b/ishtar_common/wizards.py @@ -20,6 +20,7 @@ import datetime import logging import os +from urllib.parse import unquote # from functools import wraps @@ -158,6 +159,9 @@ class IshtarWizard(NamedUrlWizardView): if not url.endswith("/"): url += "/" context["open_url"] = url + query = self.request.GET.get("query", None) + if query: + context["default_search_vector"] = unquote(query).replace('"', "''") return context @@ -1716,8 +1720,8 @@ class SearchWizard(IshtarWizard): self.request.session["CURRENT_ACTION"] = self.get_wizard_name() current_step = self.steps.current bookmark = self.request.GET.get("bookmark", None) - default_search_vector = None - if bookmark and self.model: + default_search_vector = context.get("default_search_vector", None) + if not default_search_vector and (bookmark and self.model): slug = self.model.SLUG if slug == "site": slug = "archaeologicalsite" -- cgit v1.2.3