diff options
-rw-r--r-- | searx/templates/oscar/preferences.html | 7 | ||||
-rw-r--r-- | searx/templates/simple/preferences.html | 7 | ||||
-rwxr-xr-x | searx/webapp.py | 13 |
3 files changed, 25 insertions, 2 deletions
diff --git a/searx/templates/oscar/preferences.html b/searx/templates/oscar/preferences.html index da88cd75..fe344a2e 100644 --- a/searx/templates/oscar/preferences.html +++ b/searx/templates/oscar/preferences.html @@ -348,7 +348,11 @@ <th scope="col" class="text-right">{{ _("Allow") }}</th> {% endif %} </tr> - {% for search_engine in engines_by_category[categ] %} + {% for group, engines in engines_by_category[categ] | group_engines_in_tab %} + {% if loop.length > 1 %} + <tr><th colspan="9">{{_(group)}}</th></tr> + {% endif %} + {% for search_engine in engines %} {% if not search_engine.private %} <tr> {% if not rtl %} @@ -383,6 +387,7 @@ </tr> {% endif %} {% endfor %} + {% endfor %} </table> </div> </fieldset> diff --git a/searx/templates/simple/preferences.html b/searx/templates/simple/preferences.html index 5f289c58..1d565c23 100644 --- a/searx/templates/simple/preferences.html +++ b/searx/templates/simple/preferences.html @@ -289,7 +289,11 @@ <th>{{ _("Max time") }}</th> <th>{{ _("Reliability") }}</th> </tr> - {% for search_engine in engines_by_category[categ] %} + {% for group, engines in engines_by_category[categ] | group_engines_in_tab %} + {% if loop.length > 1 %} + <tr><th colspan="9">{{_(group)}}</th></tr> + {% endif %} + {% for search_engine in engines %} {% if not search_engine.private %} {% set engine_id = 'engine_' + search_engine.name|replace(' ', '_') + '__' + categ|replace(' ', '_') %} <tr> @@ -305,6 +309,7 @@ </tr> {% endif %} {% endfor %} + {% endfor %} </table> </div> {{ tab_footer() }} diff --git a/searx/webapp.py b/searx/webapp.py index f884c35e..9ce7b9d5 100755 --- a/searx/webapp.py +++ b/searx/webapp.py @@ -59,9 +59,11 @@ from searx.settings_defaults import OUTPUT_FORMATS from searx.settings_loader import get_default_settings_path from searx.exceptions import SearxParameterException from searx.engines import ( + DEFAULT_GROUP_NAME, categories, engines, engine_shortcuts, + group_engines_in_tab, ) from searx.webutils import ( UnicodeWriter, @@ -152,6 +154,7 @@ app = Flask(__name__, static_folder=settings['ui']['static_path'], template_fold app.jinja_env.trim_blocks = True app.jinja_env.lstrip_blocks = True app.jinja_env.add_extension('jinja2.ext.loopcontrols') # pylint: disable=no-member +app.jinja_env.filters['group_engines_in_tab'] = group_engines_in_tab # pylint: disable=no-member app.secret_key = settings['server']['secret_key'] babel = Babel(app) @@ -169,6 +172,16 @@ _category_names = ( gettext('map'), gettext('onions'), gettext('science'), + # non-tab categories + gettext('apps'), + gettext('dictionaries'), + gettext('lyrics'), + gettext('packages'), + gettext('q&a'), + gettext('repos'), + gettext('software wikis'), + gettext('web'), + gettext(DEFAULT_GROUP_NAME), ) _simple_style = (gettext('auto'), gettext('light'), gettext('dark')) |