(function(a){a.fn.bscroll=function(f,g){function n(){if(l.debug){window.console&&console.log.call(console,arguments)}}function t(v){for(var u in v){if(u.indexOf&&u.indexOf("Selector")>-1&&a(v[u]).length===0){n("Your "+u+" found no elements.");return false}return true}}function b(){return l.localMode?(a(e.container)[0].scrollHeight&&a(e.container)[0].scrollHeight):a(document).height()}function k(){var u=0+b()-(l.localMode?a(e.container).scrollTop():(window.pageYOffset||a(e.container).scrollTop()||a(e.container.ownerDocument.body).scrollTop()))-a(l.localMode?e.container:window).height();n("math:",u,e.pixelsFromNavToBottom);return(u-l.bufferPx<e.pixelsFromNavToBottom)}function m(){e.loadingMsg.find("div").html(l.donetext).animate({opacity:1},2000).fadeOut("normal");l.errorCallback()}function p(){if(e.isDuringAjax||e.isInvalidPage||e.isDone){return}if(!k(l,e)){return}a(document).trigger("retrieve.infscr")}function r(){e.isDuringAjax=true;e.loadingMsg.appendTo(l.contentSelector).show();a(l.navSelector).hide();q=a.query.get("cat_key");i=a.query.get("search");var u="/catwebserve?cur="+d+"&cat_key="+q+"&search="+i;a.getJSON(u,function(v){d=v;n("heading into ajax",o);j=a(l.contentSelector).is("table")?a("<tbody/>"):a("<div/>");c=document.createDocumentFragment();o="/?cur="+d+"&cat_key="+q+"&search="+i;j.load(o+" "+l.itemSelector,null,h)})}function h(){if(e.isDone){m();return false}else{var v=j.children().get();if(v.length==0){return a.event.trigger("ajaxError",[{status:404}])}while(j[0].firstChild){c.appendChild(j[0].firstChild)}a(l.contentSelector)[0].appendChild(c);e.loadingMsg.fadeOut("normal");if(l.animate){var u=a(window).scrollTop()+a("#infscr-loading").height()+l.extraScrollPx+"px";a("html,body").animate({scrollTop:u},800,function(){e.isDuringAjax=false})}g.call(a(l.contentSelector)[0],v);if(!l.animate){e.isDuringAjax=false}}}a.browser.ie6=a.browser.msie&&a.browser.version<7;var l=a.extend({},a.bscroll.defaults,f),e=a.bscroll,j,c;var d="";g=g||function(){};if(!t(l)){return false}e.container=l.localMode?this:document.documentElement;l.contentSelector=l.contentSelector||this;var o="";var q=a.query.get("cat_key");var i=a.query.get("search");var s="/catwebserve?cur="+d+"&cat_key="+q+"&search="+i;if(l.localMode){a(e.container)[0].scrollTop=0}e.pixelsFromNavToBottom=b()+(e.container==document.documentElement?0:a(e.container).offset().top)-a(l.navSelector).offset().top;e.loadingMsg=a('<div id="infscr-loading"><div>'+l.loadingText+"</div></div>");(new Image()).src=l.loadingImg;a(document).ajaxError(function(v,w,u){n("Page not found. Self-destructing...");if(w.status==404){m();e.isDone=true;a(l.localMode?this:window).unbind("scroll.infscr")}});a(l.localMode?this:window).bind("scroll.infscr",p).trigger("scroll.infscr");a(document).bind("retrieve.infscr",r);return this};a.bscroll={defaults:{debug:false,preload:false,nextSelector:"a#next",loadingImg:"",loadingText:"<em>Loading More Games...</em>",donetext:"<em>No More Here.</em>",navSelector:"div#pagi",contentSelector:null,extraScrollPx:150,itemSelector:"div#item",animate:false,localMode:false,bufferPx:300,errorCallback:function(){}},loadingImg:undefined,loadingMsg:undefined,container:undefined,currPage:1,currDOMChunk:null,isDuringAjax:false,isInvalidPage:false,isDone:false}})(jQuery);
