on master help sign in
[enh] more flexible category selection
c23db1bAdam Tauber
searx/webapp.py+8−2
@@ -151,12 +151,18 @@ def render(template_name, override_theme=None, **kwargs):
151
151
152 if not 'selected_categories' in kwargs:
152 if not 'selected_categories' in kwargs:
153 kwargs['selected_categories'] = []
153 kwargs['selected_categories'] = []
154+ for arg in request.args:
155+ if arg.startswith('category_'):
156+ c = arg.split('_', 1)[1]
157+ if c in categories:
158+ kwargs['selected_categories'].append(c)
159+ if not kwargs['selected_categories']:
154 cookie_categories = request.cookies.get('categories', '').split(',')
160 cookie_categories = request.cookies.get('categories', '').split(',')
155 for ccateg in cookie_categories:
161 for ccateg in cookie_categories:
156 if ccateg in categories:
162 if ccateg in categories:
157 kwargs['selected_categories'].append(ccateg)
163 kwargs['selected_categories'].append(ccateg)
158− if not kwargs['selected_categories']:
164+ if not kwargs['selected_categories']:
159− kwargs['selected_categories'] = ['general']
165+ kwargs['selected_categories'] = ['general']
160
166
161 if not 'autocomplete' in kwargs:
167 if not 'autocomplete' in kwargs:
162 kwargs['autocomplete'] = autocomplete
168 kwargs['autocomplete'] = autocomplete