﻿$(document).ready(function () {
    livesearch();
});

//LiveSearch
function livesearch() {
    var globalTimeout = null;
    $('.searchboxtext').keyup(function (e) {
        var tb = this;
        if (globalTimeout != null) clearTimeout(globalTimeout);
        setTimeout(function () { callLiveSearch(tb); }, 200);
    });
}

function callLiveSearch(textbox) {
    globalTimeout = null;
    $.getJSON('/Handlers/LiveSearchHandler.ashx?q=' + textbox.value, function (data1) { insertCallback(data1); });
}

function insertCallback(data1) {
    if (data1 != null) {
        $("#liveSearchResultsContainer").remove();
        var results = '<ul id=\'livesearchresults\'>';
        $.each(data1.products, function (index, value) {
            results = results + "<li>" +
                                "<a href='" + value.url + "'>" + value.name + " - " + value.price + "</a></li>";
        });
        $('.layoutSearch').append("<div id='liveSearchResultsContainer'>" + results + " </ul></div>");
        $('#liveSearchResultsContainer').bgiframe(); //IE sucks so much... 
        registerHideEvent();
    }
}

function registerHideEvent() {
    jQuery(document.body).click(function (event) {
        var clicked = jQuery(event.target);
        if (!(clicked.is('#livesearchresults') || clicked.parents('#livesearchresults').length || clicked.is('input'))) {
            $("#liveSearchResultsContainer").fadeOut('slow').remove();
        }
    });
}

//nopCommerce Js
function getE(name) {
    if (document.getElementById)
        var elem = document.getElementById(name);
    else if (document.all)
        var elem = document.all[name];
    else if (document.layers)
        var elem = document.layers[name];
    return elem;
}
