on master help sign in
[fix] do not hide categorie inside preferences if there is no engine activated
0978f10Thomas Pointhuber
searx/templates/courgette/preferences.html+1−1
@@ -101,7 +101,7 @@
101 <th>{{ _('Category') }}</th>
101 <th>{{ _('Category') }}</th>
102 <th>{{ _('Allow') }} / {{ _('Block') }}</th>
102 <th>{{ _('Allow') }} / {{ _('Block') }}</th>
103 </tr>
103 </tr>
104− {% for categ in categories %}
104+ {% for categ in all_categories %}
105 {% for search_engine in engines_by_category[categ] %}
105 {% for search_engine in engines_by_category[categ] %}
106
106
107 {% if not search_engine.private %}
107 {% if not search_engine.private %}
searx/templates/default/preferences.html+1−1
@@ -89,7 +89,7 @@
89 <th>{{ _('Category') }}</th>
89 <th>{{ _('Category') }}</th>
90 <th>{{ _('Allow') }} / {{ _('Block') }}</th>
90 <th>{{ _('Allow') }} / {{ _('Block') }}</th>
91 </tr>
91 </tr>
92− {% for categ in categories %}
92+ {% for categ in all_categories %}
93 {% for search_engine in engines_by_category[categ] %}
93 {% for search_engine in engines_by_category[categ] %}
94
94
95 {% if not search_engine.private %}
95 {% if not search_engine.private %}
searx/templates/oscar/preferences.html+2−2
@@ -117,7 +117,7 @@
117
117
118 <!-- Nav tabs -->
118 <!-- Nav tabs -->
119 <ul class="nav nav-tabs nav-justified hide_if_nojs" role="tablist" style="margin-bottom:20px;">
119 <ul class="nav nav-tabs nav-justified hide_if_nojs" role="tablist" style="margin-bottom:20px;">
120− {% for categ in categories %}
120+ {% for categ in all_categories %}
121 <li{% if loop.first %} class="active"{% endif %}><a href="#tab_engine_{{ categ|replace(' ', '_') }}" role="tab" data-toggle="tab">{{ _(categ) }}</a></li>
121 <li{% if loop.first %} class="active"{% endif %}><a href="#tab_engine_{{ categ|replace(' ', '_') }}" role="tab" data-toggle="tab">{{ _(categ) }}</a></li>
122 {% endfor %}
122 {% endfor %}
123 </ul>
123 </ul>
@@ -128,7 +128,7 @@
128
128
129 <!-- Tab panes -->
129 <!-- Tab panes -->
130 <div class="tab-content">
130 <div class="tab-content">
131− {% for categ in categories %}
131+ {% for categ in all_categories %}
132 <noscript><label>{{ _(categ) }}</label>
132 <noscript><label>{{ _(categ) }}</label>
133 </noscript>
133 </noscript>
134 <div class="tab-pane{% if loop.first %} active{% endif %} active_if_nojs" id="tab_engine_{{ categ|replace(' ', '_') }}">
134 <div class="tab-pane{% if loop.first %} active{% endif %} active_if_nojs" id="tab_engine_{{ categ|replace(' ', '_') }}">
searx/webapp.py+8
@@ -279,6 +279,12 @@ def render(template_name, override_theme=None, **kwargs):
279 if x != 'general'
279 if x != 'general'
280 and x in nonblocked_categories)
280 and x in nonblocked_categories)
281
281
282+ if 'all_categories' not in kwargs:
283+ kwargs['all_categories'] = ['general']
284+ kwargs['all_categories'].extend(x for x in
285+ sorted(categories.keys())
286+ if x != 'general')
287+
282 if 'selected_categories' not in kwargs:
288 if 'selected_categories' not in kwargs:
283 kwargs['selected_categories'] = []
289 kwargs['selected_categories'] = []
284 for arg in request.args:
290 for arg in request.args:
@@ -286,11 +292,13 @@ def render(template_name, override_theme=None, **kwargs):
286 c = arg.split('_', 1)[1]
292 c = arg.split('_', 1)[1]
287 if c in categories:
293 if c in categories:
288 kwargs['selected_categories'].append(c)
294 kwargs['selected_categories'].append(c)
295+
289 if not kwargs['selected_categories']:
296 if not kwargs['selected_categories']:
290 cookie_categories = request.cookies.get('categories', '').split(',')
297 cookie_categories = request.cookies.get('categories', '').split(',')
291 for ccateg in cookie_categories:
298 for ccateg in cookie_categories:
292 if ccateg in categories:
299 if ccateg in categories:
293 kwargs['selected_categories'].append(ccateg)
300 kwargs['selected_categories'].append(ccateg)
301+
294 if not kwargs['selected_categories']:
302 if not kwargs['selected_categories']:
295 kwargs['selected_categories'] = ['general']
303 kwargs['selected_categories'] = ['general']
296
304