AS1.PopularKeywords = {
    load: function(config) {
        var hot = config.hot ? "1" : "0";
        var limit = parseInt(config.limit) || 10;
        this.html = config.html;
        $.getScript(AS1.server + "/" + AS1.service + "/popular_keywords.json?callback=AS1.PopularKeywords.callback&limit=" + limit + "&hot=" + hot);
    },

    callback: function(response) {
        var last = null;
        for (var i = 0; i < response.length; i++) {
            var record = response[i];
            var query = record[0];
            var tag;
            if (!last) {
                tag = $(this.html.item).show();
            } else {
                tag = last.clone();
                last.after(tag);
            }
            var text_tag = tag;
            if (this.html.item_text) {
                text_tag = tag.find(this.html.item_text);
            }
            text_tag.text(query).addClass("_keyword_tag_text");
            last = tag;
        }
        $(this.html.item).bind("click", function(e) {
            var tag = e.target;
            var text = $(tag);
            if (!text.hasClass("_keyword_tag_text")) {
                text = $(tag).find("._keyword_tag_text");
            }
            if (text && text.length > 0) {
                AS1.Form.searchFromForm(text.text(), null);
            }
            e.preventDefault();
        });
    }
}
