Modified opensearch template and autocomplete route
- Changed opensearch suggestions to use POST request - Added generic data fallback for autocomplete requests - Moved auto form submit to only occur when clicking on specific result
This commit is contained in:
parent
351a584fee
commit
b97933d147
|
@ -93,8 +93,10 @@ def autocomplete():
|
|||
request_params = request.args if request.method == 'GET' else request.form
|
||||
q = request_params.get('q')
|
||||
|
||||
if not q:
|
||||
return jsonify({'results': []})
|
||||
if not q and not request.data:
|
||||
return jsonify({'?': []})
|
||||
elif request.data:
|
||||
q = urlparse.unquote_plus(request.data.decode('utf-8').replace('q=', ''))
|
||||
|
||||
return jsonify([q, g.user_request.autocomplete(q)])
|
||||
|
||||
|
|
|
@ -42,6 +42,7 @@ const autocomplete = (searchInput, autocompleteResults) => {
|
|||
autocompleteItem.addEventListener("click", function () {
|
||||
searchInput.value = this.getElementsByTagName("input")[0].value;
|
||||
closeAllLists();
|
||||
document.getElementById("search-form").submit();
|
||||
});
|
||||
autocompleteList.appendChild(autocompleteItem);
|
||||
}
|
||||
|
@ -93,6 +94,5 @@ const autocomplete = (searchInput, autocompleteResults) => {
|
|||
// Close lists and search when user selects a suggestion
|
||||
document.addEventListener("click", function (e) {
|
||||
closeAllLists(e.target);
|
||||
document.getElementById("search-form").submit();
|
||||
});
|
||||
};
|
|
@ -7,7 +7,9 @@
|
|||
<Url type="text/html" method="{{ request_type }}" template="{{ main_url }}/search">
|
||||
<Param name="q" value="{searchTerms}"/>
|
||||
</Url>
|
||||
<Url type="application/x-suggestions+json" template="{{ main_url }}/autocomplete?q={searchTerms}"/>
|
||||
<Url type="application/x-suggestions+json" method="{{ request_type }}" template="{{ main_url }}/autocomplete">
|
||||
<Param name="q" value="{searchTerms}"/>
|
||||
</Url>
|
||||
<moz:SearchForm>{{ main_url }}/search</moz:SearchForm>
|
||||
</OpenSearchDescription>
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user