From 93ca07d8127edbc17f54dc569ac556cfe3845281 Mon Sep 17 00:00:00 2001 From: James Cole Date: Mon, 17 Sep 2018 09:36:31 +0200 Subject: [PATCH] Fix auto complete (#1519) for editing reconciliations. --- public/js/ff/accounts/edit-reconciliation.js | 57 ++++++++++++++------ resources/views/accounts/reconcile/edit.twig | 2 +- 2 files changed, 41 insertions(+), 18 deletions(-) diff --git a/public/js/ff/accounts/edit-reconciliation.js b/public/js/ff/accounts/edit-reconciliation.js index 2ee2c8ae37..c7148cae4a 100644 --- a/public/js/ff/accounts/edit-reconciliation.js +++ b/public/js/ff/accounts/edit-reconciliation.js @@ -31,23 +31,46 @@ $(document).ready(function () { */ function setAutocompletes() { - $.getJSON('json/categories').done(function (data) { - $('input[name="category"]').typeahead({source: data, autoSelect: false}); - }); - $.getJSON('json/tags').done(function (data) { - var opt = { - typeahead: { - source: data, - afterSelect: function () { - this.$element.val(""); - }, - autoSelect: false, - } - }; - $('input[name="tags"]').tagsinput( - opt - ); - }); + + // do categories auto complete: + var categories = new Bloodhound({ + datumTokenizer: Bloodhound.tokenizers.obj.whitespace('name'), + queryTokenizer: Bloodhound.tokenizers.whitespace, + prefetch: { + url: 'json/categories', + filter: function (list) { + return $.map(list, function (name) { + return {name: name}; + }); + } + } + }); + categories.initialize(); + $('input[name="category"]').typeahead({}, {source: categories, displayKey: 'name', autoSelect: false}); + + + // do tags auto complete: + var tagTags = new Bloodhound({ + datumTokenizer: Bloodhound.tokenizers.obj.whitespace('name'), + queryTokenizer: Bloodhound.tokenizers.whitespace, + prefetch: { + url: 'json/tags', + filter: function (list) { + return $.map(list, function (tagTag) { + return {name: tagTag}; + }); + } + } + }); + tagTags.initialize(); + $('input[name="tags"]').tagsinput({ + typeaheadjs: { + name: 'tags', + displayKey: 'name', + valueKey: 'name', + source: tagTags.ttAdapter() + } + }); } diff --git a/resources/views/accounts/reconcile/edit.twig b/resources/views/accounts/reconcile/edit.twig index 116fa6f29d..cbc53038c1 100644 --- a/resources/views/accounts/reconcile/edit.twig +++ b/resources/views/accounts/reconcile/edit.twig @@ -96,7 +96,7 @@ - +