From 199e12375aba03b7ca9850a90666c3aa93152b48 Mon Sep 17 00:00:00 2001
From: Israel Yago Pereira
Date: Thu, 18 Nov 2021 10:48:55 -0300
Subject: [PATCH 1/3] Preserve cookies after query
---
searx/webapp.py | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/searx/webapp.py b/searx/webapp.py
index bf9d6130..3993903c 100755
--- a/searx/webapp.py
+++ b/searx/webapp.py
@@ -741,7 +741,7 @@ def search():
},
result_container.corrections))
#
- return render(
+ rendered_page = render(
'results.html',
results=results,
q=request.form['q'],
@@ -764,6 +764,10 @@ def search():
favicons=global_favicons[themes.index(get_current_theme_name())],
timeout_limit=request.form.get('timeout_limit', None)
)
+ resp = make_response(rendered_page)
+ if request.form.get('preferences'):
+ request.preferences.save(resp)
+ return resp
def __get_translated_errors(unresponsive_engines):
From 8a80ae08434618542a1b61d13eebec33e91abe15 Mon Sep 17 00:00:00 2001
From: Israel Yago Pereira
Date: Sun, 28 Nov 2021 21:21:56 -0300
Subject: [PATCH 2/3] Check for save_preferences option
---
searx/templates/oscar/preferences.html | 10 ++++++++++
searx/webapp.py | 4 +++-
2 files changed, 13 insertions(+), 1 deletion(-)
diff --git a/searx/templates/oscar/preferences.html b/searx/templates/oscar/preferences.html
index 2602c19d..d2b05fe9 100644
--- a/searx/templates/oscar/preferences.html
+++ b/searx/templates/oscar/preferences.html
@@ -367,6 +367,16 @@
({{ _('Note: specifying custom settings in the search URL can reduce privacy by leaking data to the clicked result sites.') }}):
+
+
+ {{- checkbox_toggle("save_preferences", cookies["save_preferences"] != "on") -}}
+
+
+
Save my preferences with cookies
+
+
+
+
diff --git a/searx/webapp.py b/searx/webapp.py
index 3993903c..77d99126 100755
--- a/searx/webapp.py
+++ b/searx/webapp.py
@@ -765,10 +765,12 @@ def search():
timeout_limit=request.form.get('timeout_limit', None)
)
resp = make_response(rendered_page)
- if request.form.get('preferences'):
+ if __should_save_preferences(request):
request.preferences.save(resp)
return resp
+def __should_save_preferences(request):
+ return request.form.get('preferences') and request.form.get('save_preferences') != 'on'
def __get_translated_errors(unresponsive_engines):
translated_errors = set()
From 68a6b386d02a0446ab14eb51ed597c9ca7c201a5 Mon Sep 17 00:00:00 2001
From: Israel Yago Pereira
Date: Sun, 28 Nov 2021 21:25:04 -0300
Subject: [PATCH 3/3] Fix for codestyle
---
searx/webapp.py | 2 ++
1 file changed, 2 insertions(+)
diff --git a/searx/webapp.py b/searx/webapp.py
index 77d99126..f59de014 100755
--- a/searx/webapp.py
+++ b/searx/webapp.py
@@ -769,9 +769,11 @@ def search():
request.preferences.save(resp)
return resp
+
def __should_save_preferences(request):
return request.form.get('preferences') and request.form.get('save_preferences') != 'on'
+
def __get_translated_errors(unresponsive_engines):
translated_errors = set()
for unresponsive_engine in unresponsive_engines: