mirror of
https://github.com/searxng/searxng.git
synced 2026-07-22 07:51:24 +00:00
Compare commits
9 Commits
3742d558ac
...
65c970bdf4
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
65c970bdf4 | ||
|
|
d4e3a5f2f2 | ||
|
|
1604a00b89 | ||
|
|
899edee5ec | ||
|
|
523df1d7f4 | ||
|
|
c8e932647b | ||
|
|
8d2c01e4ce | ||
|
|
12c27f416f | ||
|
|
e90fa48018 |
2
searx/static/themes/simple/js/searxng.min.js
vendored
2
searx/static/themes/simple/js/searxng.min.js
vendored
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -43,11 +43,11 @@
|
||||
createClearButton(qinput);
|
||||
|
||||
// autocompleter
|
||||
if (searxng.settings.autocomplete_provider) {
|
||||
if (searxng.settings.autocomplete) {
|
||||
searxng.autocomplete = AutoComplete.call(w, {
|
||||
Url: "./autocompleter",
|
||||
EmptyMessage: searxng.settings.translations.no_item_found,
|
||||
HttpMethod: searxng.settings.http_method,
|
||||
HttpMethod: searxng.settings.method,
|
||||
HttpHeaders: {
|
||||
"Content-type": "application/x-www-form-urlencoded",
|
||||
"X-Requested-With": "XMLHttpRequest"
|
||||
@@ -186,20 +186,22 @@
|
||||
|
||||
// override form submit action to update the actually selected categories
|
||||
const form = d.querySelector("#search");
|
||||
searxng.on(form, 'submit', (event) => {
|
||||
event.preventDefault();
|
||||
const categoryValuesInput = d.querySelector("#selected-categories");
|
||||
if (categoryValuesInput) {
|
||||
let categoryValues = [];
|
||||
for (let categoryButton of categoryButtons) {
|
||||
if (categoryButton.classList.contains("selected")) {
|
||||
categoryValues.push(categoryButton.name.replace("category_", ""));
|
||||
if (form != null) {
|
||||
searxng.on(form, 'submit', (event) => {
|
||||
event.preventDefault();
|
||||
const categoryValuesInput = d.querySelector("#selected-categories");
|
||||
if (categoryValuesInput) {
|
||||
let categoryValues = [];
|
||||
for (let categoryButton of categoryButtons) {
|
||||
if (categoryButton.classList.contains("selected")) {
|
||||
categoryValues.push(categoryButton.name.replace("category_", ""));
|
||||
}
|
||||
}
|
||||
categoryValuesInput.value = categoryValues.join(",");
|
||||
}
|
||||
categoryValuesInput.value = categoryValues.join(",");
|
||||
}
|
||||
form.submit();
|
||||
});
|
||||
form.submit();
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
})(window, document, window.searxng);
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
|
||||
<!-- Draw result header -->
|
||||
{% macro result_header(result, favicons, image_proxify) -%}
|
||||
<article class="result {% if result['template'] %}result-{{ result.template|replace('.html', '') }}{% else %}result-default{% endif %} {% if result['category'] %}category-{{ result['category'] }}{% endif %}{% for e in result.engines %} {{ e }}{% endfor %}">
|
||||
<article class="result {% if result['template'] %}result-{{ result.template|replace('.html', '') }}{% else %}result-default{% endif %} {% if result['category'] %}category-{{ result['category'] }}{% endif %}">
|
||||
{{- result_open_link(result.url, "url_header") -}}
|
||||
{%- if favicon_resolver != "" %}
|
||||
<div class="favicon"><img loading="lazy" src="{{ favicon_url(result.parsed_url.netloc) }}"></div>
|
||||
|
||||
@@ -357,29 +357,40 @@ def get_pretty_url(parsed_url: urllib.parse.ParseResult):
|
||||
def get_client_settings():
|
||||
req_pref = request.preferences
|
||||
return {
|
||||
'autocomplete_provider': req_pref.get_value('autocomplete'),
|
||||
'autocomplete': req_pref.get_value('autocomplete'),
|
||||
'autocomplete_min': get_setting('search.autocomplete_min'),
|
||||
'http_method': req_pref.get_value('method'),
|
||||
'method': req_pref.get_value('method'),
|
||||
'infinite_scroll': req_pref.get_value('infinite_scroll'),
|
||||
'translations': get_translations(),
|
||||
'search_on_category_select': req_pref.get_value('search_on_category_select'),
|
||||
'hotkeys': req_pref.get_value('hotkeys'),
|
||||
'url_formatting': req_pref.get_value('url_formatting'),
|
||||
'theme_static_path': custom_url_for('static', filename='themes/simple'),
|
||||
'results_on_new_tab': req_pref.get_value('results_on_new_tab'),
|
||||
'favicon_resolver': req_pref.get_value('favicon_resolver'),
|
||||
'advanced_search': req_pref.get_value('advanced_search'),
|
||||
'query_in_title': req_pref.get_value('query_in_title'),
|
||||
'safesearch': str(req_pref.get_value('safesearch')),
|
||||
'theme': req_pref.get_value('theme'),
|
||||
'doi_resolver': get_doi_resolver(req_pref),
|
||||
}
|
||||
|
||||
|
||||
def render(template_name: str, **kwargs):
|
||||
# values from the preferences
|
||||
# pylint: disable=too-many-statements
|
||||
client_settings = get_client_settings()
|
||||
kwargs['client_settings'] = str(
|
||||
base64.b64encode(
|
||||
bytes(
|
||||
json.dumps(get_client_settings()),
|
||||
json.dumps(client_settings),
|
||||
encoding='utf-8',
|
||||
)
|
||||
),
|
||||
encoding='utf-8',
|
||||
)
|
||||
kwargs['preferences'] = request.preferences
|
||||
kwargs.update(client_settings)
|
||||
|
||||
# values from the HTTP requests
|
||||
kwargs['endpoint'] = 'results' if 'q' in kwargs else request.endpoint
|
||||
@@ -387,20 +398,6 @@ def render(template_name: str, **kwargs):
|
||||
kwargs['errors'] = request.errors
|
||||
kwargs['link_token'] = link_token.get_token()
|
||||
|
||||
# values from the preferences
|
||||
kwargs['preferences'] = request.preferences
|
||||
kwargs['autocomplete'] = request.preferences.get_value('autocomplete')
|
||||
kwargs['favicon_resolver'] = request.preferences.get_value('favicon_resolver')
|
||||
kwargs['infinite_scroll'] = request.preferences.get_value('infinite_scroll')
|
||||
kwargs['search_on_category_select'] = request.preferences.get_value('search_on_category_select')
|
||||
kwargs['hotkeys'] = request.preferences.get_value('hotkeys')
|
||||
kwargs['url_formatting'] = request.preferences.get_value('url_formatting')
|
||||
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'] = request.preferences.get_value('theme')
|
||||
kwargs['method'] = request.preferences.get_value('method')
|
||||
kwargs['categories_as_tabs'] = list(settings['categories_as_tabs'].keys())
|
||||
kwargs['categories'] = get_enabled_categories(settings['categories_as_tabs'].keys())
|
||||
kwargs['DEFAULT_CATEGORY'] = DEFAULT_CATEGORY
|
||||
@@ -440,7 +437,6 @@ def render(template_name: str, **kwargs):
|
||||
kwargs['proxify_results'] = settings['result_proxy']['proxify_results']
|
||||
kwargs['cache_url'] = settings['ui']['cache_url']
|
||||
kwargs['get_result_template'] = get_result_template
|
||||
kwargs['doi_resolver'] = get_doi_resolver(request.preferences)
|
||||
kwargs['opensearch_url'] = (
|
||||
url_for('opensearch')
|
||||
+ '?'
|
||||
|
||||
Reference in New Issue
Block a user