summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--searx/preferences.py11
-rw-r--r--searx/settings.yml4
-rw-r--r--searx/settings_defaults.py1
-rw-r--r--searx/templates/oscar/preferences.html11
-rw-r--r--searx/templates/oscar/results.html2
-rw-r--r--searx/templates/simple/preferences.html12
-rw-r--r--searx/templates/simple/results.html2
-rwxr-xr-xsearx/webapp.py1
8 files changed, 42 insertions, 2 deletions
diff --git a/searx/preferences.py b/searx/preferences.py
index 9c549cc01..4d0cc5c0a 100644
--- a/searx/preferences.py
+++ b/searx/preferences.py
@@ -411,6 +411,17 @@ class Preferences:
'on': True,
}
),
+ 'query_in_title': MapSetting(
+ settings['ui']['query_in_title'],
+ is_locked('query_in_title'),
+ map={
+ '': settings['ui']['query_in_title'],
+ '0': False,
+ '1': True,
+ 'True': True,
+ 'False': False
+ }
+ ),
}
self.engines = EnginesSetting('engines', choices=engines)
diff --git a/searx/settings.yml b/searx/settings.yml
index 5e7fb8224..c4ea6ebdb 100644
--- a/searx/settings.yml
+++ b/searx/settings.yml
@@ -66,6 +66,9 @@ ui:
static_path: ""
# Custom templates path - leave it blank if you didn't change
templates_path: ""
+ # query_in_title: When true, the result page's titles contains the query
+ # it decreases the privacy, since the browser can records the page titles.
+ query_in_title: false
# ui theme
default_theme: oscar
# Default interface locale - leave blank to detect from browser information or
@@ -93,6 +96,7 @@ ui:
# - language
# - autocomplete
# - method
+# - query_in_title
# searx supports result proxification using an external service:
# https://github.com/asciimoo/morty uncomment below section if you have running
diff --git a/searx/settings_defaults.py b/searx/settings_defaults.py
index 69b6a0fb7..db020db7d 100644
--- a/searx/settings_defaults.py
+++ b/searx/settings_defaults.py
@@ -188,6 +188,7 @@ SCHEMA = {
},
'results_on_new_tab': SettingsValue(bool, False),
'advanced_search': SettingsValue(bool, False),
+ 'query_in_title': SettingsValue(bool, False),
'categories_order': SettingsValue(list, CATEGORY_ORDER),
},
'preferences': {
diff --git a/searx/templates/oscar/preferences.html b/searx/templates/oscar/preferences.html
index 5c187140f..e5a7a9423 100644
--- a/searx/templates/oscar/preferences.html
+++ b/searx/templates/oscar/preferences.html
@@ -280,6 +280,17 @@
{{ preferences_item_footer(image_proxy_info, image_proxy_label, rtl) }}
{% endif %}
+ {% if 'query_in_title' not in locked_preferences %}
+ {% set query_in_title_label = _('Query in the page\'s title') %}
+ {% set query_in_title_info = _('When enabled, the result page\'s title contains your query. Your browser can record this title') %}
+ {{ preferences_item_header(query_in_title_info, query_in_title_label, rtl, 'query_in_title') }}
+ <select class="form-control {{ custom_select_class(rtl) }}" name="query_in_title" id="query_in_title">
+ <option value="1" {% if query_in_title %}selected="selected"{% endif %}>{{ _('Enabled') }}</option>
+ <option value="" {% if not query_in_title %}selected="selected"{% endif %}>{{ _('Disabled')}}</option>
+ </select>
+ {{ preferences_item_footer(query_in_title_info, query_in_title_label, rtl) }}
+ {% endif %}
+
{{ plugin_of_category('privacy' )}}
</div>
</fieldset>
diff --git a/searx/templates/oscar/results.html b/searx/templates/oscar/results.html
index b5bedcd44..ce99fe0ac 100644
--- a/searx/templates/oscar/results.html
+++ b/searx/templates/oscar/results.html
@@ -16,7 +16,7 @@
{%- endmacro %}
{%- macro search_url() %}{{ url_for('search', _external=True) }}?q={{ q|urlencode }}{% if selected_categories %}&amp;categories={{ selected_categories|join(",") | replace(' ','+') }}{% endif %}{% if pageno > 1 %}&amp;pageno={{ pageno }}{% endif %}{% if time_range %}&amp;time_range={{ time_range }}{% endif %}{% if current_language != 'all' %}&amp;language={{ current_language }}{% endif %}{% endmacro -%}
-{% block title %}{{ q|e }} - {% endblock %}
+{% block title %}{% if query_in_title %}{{- q|e -}} - {% endif %}{% endblock %}
{% block meta %}{{" "}}<link rel="alternate" type="application/rss+xml" title="Searx search: {{ q|e }}" href="{{ search_url() }}&amp;format=rss">{% endblock %}
{% block content %}
{% include 'oscar/search.html' %}
diff --git a/searx/templates/simple/preferences.html b/searx/templates/simple/preferences.html
index 23f6355f5..3fb962bd3 100644
--- a/searx/templates/simple/preferences.html
+++ b/searx/templates/simple/preferences.html
@@ -256,6 +256,18 @@
<div class="description">{{ _('Proxying image results through SearXNG') }}</div>
</fieldset>
{% endif %}
+ {% if 'query_in_title' not in locked_preferences %}
+ <fieldset>
+ <legend>{{ _('Query in the page\'s title') }}</legend>
+ <p class="value">
+ <select name='query_in_title'>
+ <option value="1" {% if query_in_title %}selected="selected"{% endif %}>{{ _('Enabled') }}</option>
+ <option value="" {% if not query_in_title %}selected="selected"{% endif %}>{{ _('Disabled') }}</option>
+ </select>
+ </p>
+ <div class="description">{{ _('When enabled, the result page\'s title contains your query. Your browser can record this title.') }}</div>
+ </fieldset>
+ {% endif %}
{{ plugin_preferences('privacy') }}
{{ tab_footer() }}
diff --git a/searx/templates/simple/results.html b/searx/templates/simple/results.html
index 59de1ee0d..5a279bd7d 100644
--- a/searx/templates/simple/results.html
+++ b/searx/templates/simple/results.html
@@ -7,7 +7,7 @@
{% endfor %}
{% endfor %}
{%- endmacro %}
-{% block title %}{% if method == 'GET' %}{{- q|e -}} -{% endif %}{% endblock %}
+{% block title %}{% if query_in_title %}{{- q|e -}} - {% endif %}{% endblock %}
{% block meta %}<link rel="alternate" type="application/rss+xml" title="Searx search: {{ q|e }}" href="{{ url_for('search', _external=True) }}?q={{ q|urlencode }}&amp;categories={{ selected_categories|join(",") | replace(' ','+') }}&amp;pageno={{ pageno }}&amp;time_range={{ time_range }}&amp;language={{ current_language }}&amp;safesearch={{ safesearch }}&amp;format=rss">{% endblock %}
{% block content %}
<nav id="linkto_preferences"><a href="{{ url_for('preferences') }}">{{ icon_big('menu-outline') }}</a></nav>
diff --git a/searx/webapp.py b/searx/webapp.py
index 6039be547..94d421eb0 100755
--- a/searx/webapp.py
+++ b/searx/webapp.py
@@ -441,6 +441,7 @@ def render(template_name, override_theme=None, **kwargs):
kwargs['autocomplete'] = request.preferences.get_value('autocomplete')
kwargs['results_on_new_tab'] = request.preferences.get_value('results_on_new_tab')
kwargs['advanced_search'] = request.preferences.get_value('advanced_search')
+ kwargs['query_in_title'] = request.preferences.get_value('query_in_title')
kwargs['safesearch'] = str(request.preferences.get_value('safesearch'))
kwargs['theme'] = get_current_theme_name(override=override_theme)
kwargs['all_categories'] = _get_ordered_categories()