﻿
var oresults = [];

function cntrlSearchSuggestion_onClientItemsRequesting(sender, eventArgs) {
    sender.get_items().clear();
    if (sender.get_text().length > 0) {
        oresults = cntrlSearchSuggestion_getSuggestions(sender.get_text());
        sender.trackChanges();
        var itextlength = sender.get_text().length;
        for (var i = 0; i < oresults.length; i++) {
            var ocomboitem = new Telerik.Web.UI.RadComboBoxItem();
            with (ocomboitem) {
                set_text(oresults[i].name);
                set_value(oresults[i].value);
            }
            sender.get_items().add(ocomboitem);
            sender.get_items().getItem(i).get_element().innerHTML = ["<b style=\"color:" + __searchpanel.areaSuggestionsHighlightColour + "\">", oresults[i].name.substring(0, itextlength), "</b><span style=\"color:" + __searchpanel.areaSuggestionsTextColour + "\">", oresults[i].name.substring(itextlength), "</span>"].join("");
            if (i == 9) break;
        }
        sender.commitChanges();
        sender.showDropDown();
    } else {
        sender.hideDropDown();
    }

    eventArgs.set_cancel(true);
}

function cntrlSearchSuggestion_onClientItemsRequested(sender, eventArgs) {
    if (sender.get_items().get_count() == 0) {
        sender.hideDropDown();
    }
}

function cntrlSearchSuggestion_getSuggestions(text) {
    var osuggestions = [];
    for (var i = 0; i < gbsData.length; i++) {
        var oitem = gbsData[i];
        if (oitem.name.toLowerCase().indexOf(text.toLowerCase()) == 0) {
            osuggestions.push(oitem);
        }
    }
    return osuggestions;
}

