﻿jQuery(document).ready(function(){
    MFEGAutoCompleter = function (id){
        var cache = new Array(),lastXhr;
        jQuery(id).autocomplete({
            source:function(request, response) {
                var term = request.term;
                var searchparam = "all";
                if (jQuery(".search-search input:checked") > 0){
                    searchparam = jQuery(".search-search input:checked").val().split("-")[1];
                }
                if (searchparam + "-" + term in cache ) {
                    response( cache[ searchparam + "-" + term ] );
                    return;
                }
                lastXhr = $.ajax({
                    url:"http://www.pureenergydigital.com/autocomplete.aspx?search=" + searchparam +"&term=" + term,
                    dataType:'json',
                    type:"POST",
                    delay:10,
                    success: function( data, status, xhr ) {
                        if(data.length > 0){
                            cache[ searchparam + "-" + term ] = data;
                            if ( xhr === lastXhr ) {response( data );}
                        }
                    }
                });
            },
            minLength: 2,
            select:function(event, ui){
                if (event.srcElement.href === ui.item.link){window.location=ui.item.link;}
            },
            focus:function(event,ui) {
                if (event.srcElement.href === ui.item.link) {
                    jQuery("a[href='"+ ui.item.link+"']").parent().children("a:first").removeClass("ui-state-hover");
                }
                jQuery("a[href='"+ ui.item.link+"']").removeClass("ui-state-hover");            
            }
        }).data("autocomplete")._renderItem = function(ul, item) {
            var t = item.label.replace(new RegExp(this.term,"i"),"<span style='font-weight:bold;'>" + "$&" + "</span>");
            return jQuery( "<li></li>" )
                .data( "item.autocomplete", item )
                .append('<a>' + t + "</a>"+'<a class="fastTrack" title="view '+ item.label +'" href="' + item.link + '">&nbsp;&nbsp;</a>')
                .appendTo(ul);
        };
    }
});
