summaryrefslogtreecommitdiff
path: root/searx/static/themes/oscar/src/js/autocompleter.js
diff options
context:
space:
mode:
authorAlexandre Flament <alex@al-f.net>2021-03-10 15:03:18 +0100
committerAlexandre Flament <alex@al-f.net>2021-03-10 19:28:51 +0100
commitc7133efb12641c55395e5b249cbc3cf44d8c8dff (patch)
tree081789575e0d287107f68087da209133286fa725 /searx/static/themes/oscar/src/js/autocompleter.js
parenteda3b513acd2106da44e8cddae3d54a90e241958 (diff)
[mod] oscar: move compiled files to the src directory
Diffstat (limited to 'searx/static/themes/oscar/src/js/autocompleter.js')
-rw-r--r--searx/static/themes/oscar/src/js/autocompleter.js49
1 files changed, 49 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..26d567507
--- /dev/null
+++ b/searx/static/themes/oscar/src/js/autocompleter.js
@@ -0,0 +1,49 @@
+/**
+ * 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>
+ */
+
+if(searx.autocompleter) {
+ searx.searchResults = new Bloodhound({
+ datumTokenizer: Bloodhound.tokenizers.obj.whitespace('value'),
+ queryTokenizer: Bloodhound.tokenizers.whitespace,
+ remote: './autocompleter?q=%QUERY'
+ });
+ searx.searchResults.initialize();
+}
+
+$(document).ready(function(){
+ var original_search_value = '';
+ if(searx.autocompleter) {
+ $("#q").on('keydown', function(e) {
+ if(e.which == 13) {
+ original_search_value = $('#q').val();
+ }
+ });
+ $('#q').typeahead(null, {
+ name: 'search-results',
+ displayKey: function(result) {
+ return result;
+ },
+ source: searx.searchResults.ttAdapter()
+ });
+ $('#q').bind('typeahead:selected', function(ev, suggestion) {
+ if(original_search_value) {
+ $('#q').val(original_search_value);
+ }
+ $("#search_form").submit();
+ });
+ }
+});