diff --git a/javascript/src/TypeAhead.js b/javascript/src/TypeAhead.js index 2a3db19add103036591df50d0265d9ce0a058d0f..81b354b0b679eeee75b93ebe3ca66af5c076bbdb 100644 --- a/javascript/src/TypeAhead.js +++ b/javascript/src/TypeAhead.js @@ -44,6 +44,11 @@ var QfqNS = QfqNS || {}; } }; + var url = n.TypeAhead.makeUrl(typeahead_endpoint, $element); + url = url.replace('%QUERY', ''); + console.log(url); + $.getJSON(url, {}, console.log); // API by hand + // initialize typeahead (either with or without tags) if ($element.data('typeahead-tags')) { n.TypeAhead.installWithTags($element, bloodhoundConfiguration); @@ -138,6 +143,19 @@ var QfqNS = QfqNS || {}; tagApi.tagsManager('pushTag', tag.value); }); + console.log(JSON.parse(JSON.stringify(n.TypeAhead.getMinLength($element)))); + + function suggestionsWithDefaults(q, sync, async) { + if (q === '') { + sync(suggestions.index.all().slice(0, 2)); // slice(start,end) + // suggestions.search('', sync, async); + } + else { + suggestions.search(q, sync, async); + } + } + $inputField.data('bloodhound', suggestions); + // add typahead $inputField.typeahead({ // options @@ -146,7 +164,7 @@ var QfqNS = QfqNS || {}; minLength: n.TypeAhead.getMinLength($element) }, { display: 'value', - source: suggestions, + source: suggestionsWithDefaults, limit: n.TypeAhead.getLimit($element), templates: { suggestion: function (obj) { @@ -199,7 +217,6 @@ var QfqNS = QfqNS || {}; }; })($element, suggestions)); - $element.typeahead({ // options hint: n.TypeAhead.getHint($element), @@ -308,7 +325,7 @@ var QfqNS = QfqNS || {}; }; n.TypeAhead.getMinLength = function ($element) { - return $element.data('typeahead-minlength') || 2; + return $element.data('typeahead-minlength') !== undefined ? $element.data('typeahead-minlength') : 2; }; n.TypeAhead.getHighlight = function ($element) { diff --git a/mockup/typeahead.php b/mockup/typeahead.php index 1b57f98fd218f4db8c8602b4b2a3f4311ab5a0a2..9044b9c8867663757f31db9d665ee3d4a9a69d3c 100644 --- a/mockup/typeahead.php +++ b/mockup/typeahead.php @@ -144,9 +144,10 @@ <input id="tags1" type="hidden" class="form-control qfq-typeahead" name="tags1" data-typeahead-sip="abcdef" data-typeahead-limit="10" - data-typeahead-minlength="1" + data-typeahead-minlength="0" data-typeahead-tags="true" + data-typeahead-pedantic="0" data-typeahead-tag-delimiters="[9, 13]" value="<?php echo $tagsSafeJson; ?>" >