﻿var srchKeywords = [];
function prepareKeywordSearch() {
    var tb = $('tbSearchProducts') || $('tbSearchSupplies') || $('_searchText');
    if (tb) {
        tb.observe("focus", loadKeywords);
        tb.observe("autocomplete:bind", function(ev) {
            new Autocompleter.Local(this, "keywordsList", srchKeywords, {
                choices: 20,
                partialSearch: true,
                partialChars: 2,
                ignoreCase: true,
                updateElement: function(selected) {
                    var original = Element.collectTextNodesIgnoreClass(selected, 'informal');
                    var value = original.substring(0, original.indexOf("-") - 1).strip();
                    var element = $(this.paramName);
                    element.value = value.empty() ? original : value;
                    document.forms[0].submit();
                }
            });
        });
    }
}

function loadKeywords(ev) {
    var elem = ev.element();
    var list = "products";
    if (srchKeywords.length == 0 && !!portalID) {
        new Ajax.Request('/utils/keywords.aspx?rid=' + portalID, {
            method: 'get',
            onSuccess: function(t) {
                var s = t.responseText;
                srchKeywords = s.split("\r\n");
                elem.fire("autocomplete:bind");
            }
        });
    }
}