on master help sign in
[enh] always enable inner autocompletition (server side only)
78081baAdam Tauber
searx/webapp.py+7−12
@@ -429,34 +429,29 @@ def autocompleter():
429 # run autocompleter
429 # run autocompleter
430 completer = autocomplete_backends.get(request.cookies.get('autocomplete'))
430 completer = autocomplete_backends.get(request.cookies.get('autocomplete'))
431
431
432− # check if valid autocompleter is selected
433− if not completer:
434− return '', 400
435−
436 # parse searx specific autocompleter results like !bang
432 # parse searx specific autocompleter results like !bang
437 raw_results = searx_bang(query)
433 raw_results = searx_bang(query)
438
434
439− # normal autocompletion results only appear if max 3. searx results returned
435+ # normal autocompletion results only appear if max 3 inner results returned
440− if len(raw_results) <= 3:
436+ if len(raw_results) <= 3 and completer:
441 # run autocompletion
437 # run autocompletion
442 raw_results.extend(completer(query.getSearchQuery()))
438 raw_results.extend(completer(query.getSearchQuery()))
443
439
444 # parse results (write :language and !engine back to result string)
440 # parse results (write :language and !engine back to result string)
445 results = []
441 results = []
446 for result in raw_results:
442 for result in raw_results:
447− result_query = query
448− result_query.changeSearchQuery(result)
443+ query.changeSearchQuery(result)
449
444
450 # add parsed result
445 # add parsed result
451− results.append(result_query.getFullQuery())
446+ results.append(query.getFullQuery())
452
447
453 # return autocompleter results
448 # return autocompleter results
454 if request_data.get('format') == 'x-suggestions':
449 if request_data.get('format') == 'x-suggestions':
455 return Response(json.dumps([query.query, results]),
450 return Response(json.dumps([query.query, results]),
456 mimetype='application/json')
451 mimetype='application/json')
457− else:
452+
458− return Response(json.dumps(results),
453+ return Response(json.dumps(results),
459− mimetype='application/json')
454+ mimetype='application/json')
460
455
461
456
462@app.route('/preferences', methods=['GET', 'POST'])
457@app.route('/preferences', methods=['GET', 'POST'])