diff options
| author | Alexandre Flament <alex@al-f.net> | 2021-03-13 09:29:13 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-03-13 09:29:13 +0100 |
| commit | 9292571304376c2c463fb26ee0db89298bb00e6c (patch) | |
| tree | 8a2dba56227f67aa52b091d1674190cd40e1411e /searx/static/themes/oscar/src/js/autocompleter.js | |
| parent | 22a2e544551e87fb9ea74d2fe07b59bfa0815368 (diff) | |
| parent | cb04d4280642164bddd37e39151bf22799ef3792 (diff) | |
Merge pull request #2346 from dalf/upgrade-oscar
[mod] oscar: upgrade dependencies
Diffstat (limited to 'searx/static/themes/oscar/src/js/autocompleter.js')
| -rw-r--r-- | searx/static/themes/oscar/src/js/autocompleter.js | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/searx/static/themes/oscar/src/js/autocompleter.js b/searx/static/themes/oscar/src/js/autocompleter.js new file mode 100644 index 000000000..56293f4f3 --- /dev/null +++ b/searx/static/themes/oscar/src/js/autocompleter.js @@ -0,0 +1,60 @@ +/** + * searx is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * searx is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with searx. If not, see < http://www.gnu.org/licenses/ >. + * + * (C) 2014 by Thomas Pointhuber, <thomas.pointhuber@gmx.at> + */ + +$(document).ready(function(){ + var original_search_value = ''; + if(searx.autocompleter) { + var searchResults = new Bloodhound({ + datumTokenizer: Bloodhound.tokenizers.obj.whitespace('value'), + queryTokenizer: Bloodhound.tokenizers.whitespace, + remote: { + url: './autocompleter?q=%QUERY', + wildcard: '%QUERY' + } + }); + searchResults.initialize(); + + $("#q").on('keydown', function(e) { + if(e.which == 13) { + original_search_value = $('#q').val(); + } + }); + $('#q').typeahead({ + name: 'search-results', + highlight: false, + hint: true, + displayKey: function(result) { + return result; + }, + classNames: { + input: 'tt-input', + hint: 'tt-hint', + menu: 'tt-dropdown-menu', + dataset: 'tt-dataset-search-results', + }, + }, { + name: 'autocomplete', + source: searchResults, + }); + $('#q').bind('typeahead:select', function(ev, suggestion) { + if(original_search_value) { + $('#q').val(original_search_value); + } + $("#search_form").submit(); + }); + } +}); |