
var G4TV=G4TV==null?{}:G4TV;G4TV.gbl={};G4TV.util={};G4TV.ui={};G4TV.ui.gbl={};G4TV.ui.mod={};G4TV.gbl.IMG_DIR='http://cache.g4tv.com/static/';G4TV.gbl.DATA_DIR='http://g4tv.com/assets/data/';G4TV.gbl.SCRIPT_DIR='http://g4tv.com/assets/js/';G4TV.gbl.SWF_DIR='http://g4tv.com/assets/flash/';(function(){if(!window.console){window.console={};var actions=['log','debug','info','warn','error','assert','dir','dirxml','group','groupEnd','time','timeEnd','count','trace','profile','profileEnd'];jQuery.each(actions,function(i,action){window.console[action]=function(){};});}})();(function($){G4TV.gbl.defaults=[{simpleTipSettings:{stemClass:'arrow',hook:{target:'topMiddle',tooltip:'bottomMiddle'},offset:[37,-5],parentClass:'tooltip',hideEffect:'none',showEffect:'none',border:{size:0},showDelay:0,hideDelay:0,viewport:true}}];})(jQuery);G4TV.gbl.loadedScripts=[];G4TV.gbl.loadedStyleSheets=[];jQuery.extend({getScript:function(url,callback,cache){var cache=cache||true;if(jQuery.inArray(url,G4TV.gbl.loadedScripts)!=-1){if(callback){callback.apply();}}else{return jQuery.ajax({url:url,type:'GET',dataType:'script',success:callback,async:false,error:function(req,status,err){if(jQuery.inArray(url,G4TV.gbl.loadedScripts)!=-1){G4TV.gbl.loadedScripts.splice(jQuery.inArray(url,G4TV.gbl.loadedScripts),1);}
console.warn(err);},complete:function(){G4TV.gbl.loadedScripts.push(url);},cache:cache});}},getStyleSheet:function(url){if(jQuery.inArray(url,G4TV.gbl.loadedStyleSheets)==-1){jQuery(document.createElement('link')).attr({type:'text/css',href:url,rel:'stylesheet'}).appendTo('head');}}});jQuery(document).ready(function(){if(jQuery.browser.msie){jQuery('body').addClass('ie');}
else if(jQuery.browser.mozilla){jQuery('body').addClass('firefox');}
else if(jQuery.browser.safari){jQuery('body').addClass('webkit');}
if(typeof(G4TV.ui.ThemeManager)!=='undefined'){G4TV.ui.ThemeManager.init({themes:'#hd #theme-toggle button'});}
if(typeof(G4TV.ui.SecnavDropdown)!=='undefined'){G4TV.ui.SecnavDropdown.init();}
if(typeof(G4TV.ui.mod.SiteAlert)!=='undefined'){G4TV.ui.mod.SiteAlert.init();}
if(typeof(G4TV.ui.mod.SecondaryNav)!=='undefined'){G4TV.ui.mod.SecondaryNav.init();}
jQuery('.content-item .thumb, .content-item h4 a').live('mouseover',function(){jQuery(this).parents('li.content-item').addClass('hover');});jQuery('.content-item .thumb, .content-item h4 a').live('mouseout',function(){jQuery(this).parents('li.content-item').removeClass('hover');});jQuery('form.search-input-form input.search-input').each(function(){jQuery(this).bind('focus click',function(){var searchText=jQuery(this).parents('form').find('span.search-text').text();if(jQuery.trim(jQuery(this).val())==searchText){jQuery(this).val('');jQuery(this).removeClass('default-text');}});jQuery(this).bind('blur',function(){var searchText=jQuery(this).parents('form').find('span.search-text').text();if(jQuery.trim(jQuery(this).val())==''){jQuery(this).val(searchText);jQuery(this).addClass('default-text');}});});jQuery('form.search-input-form').bind('submit',function(){var searchInputText=jQuery.trim(jQuery(this).find('input.search-input').val());var defaultSearchText=jQuery.trim(jQuery(this).find('span.search-text').text());if(searchInputText==defaultSearchText||searchInputText==""||searchInputText.length<1){alert('Please enter a search term!');return false;}});if(jQuery.isFunction(jQuery('.suggestive-search').tagdragon)){jQuery('.suggestive-search').tagdragon({'field':'hd-suggestive-search','url':'http://g4tv.com/search/suggestedresults/index.html'});jQuery('#hd-nav').bind('mouseover',function(){jQuery('#tagbox-lkup').hide();});}});jQuery(window).bind("load",function(){jQuery('body').addClass('loaded');});(function($){$.fn.hoverIntent=function(f,g){var cfg={sensitivity:7,interval:100,timeout:0};cfg=$.extend(cfg,g?{over:f,out:g}:f);var cX,cY,pX,pY;var track=function(ev){cX=ev.pageX;cY=ev.pageY;};var compare=function(ev,ob){ob.hoverIntent_t=clearTimeout(ob.hoverIntent_t);if((Math.abs(pX-cX)+Math.abs(pY-cY))<cfg.sensitivity){$(ob).unbind("mousemove",track);ob.hoverIntent_s=1;return cfg.over.apply(ob,[ev]);}else{pX=cX;pY=cY;ob.hoverIntent_t=setTimeout(function(){compare(ev,ob);},cfg.interval);}};var delay=function(ev,ob){ob.hoverIntent_t=clearTimeout(ob.hoverIntent_t);ob.hoverIntent_s=0;return cfg.out.apply(ob,[ev]);};var handleHover=function(e){var p=(e.type=="mouseover"?e.fromElement:e.toElement)||e.relatedTarget;while(p&&p!=this){try{p=p.parentNode;}catch(e){p=this;}}if(p==this){return false;}var ev=jQuery.extend({},e);var ob=this;if(ob.hoverIntent_t){ob.hoverIntent_t=clearTimeout(ob.hoverIntent_t);}if(e.type=="mouseover"){pX=ev.pageX;pY=ev.pageY;$(ob).bind("mousemove",track);if(ob.hoverIntent_s!=1){ob.hoverIntent_t=setTimeout(function(){compare(ev,ob);},cfg.interval);}}else{$(ob).unbind("mousemove",track);if(ob.hoverIntent_s==1){ob.hoverIntent_t=setTimeout(function(){delay(ev,ob);},cfg.timeout);}}};return this.mouseover(handleHover).mouseout(handleHover);};})(jQuery);function tooltiptab(e){var i=jQuery(e).parent().children(".tooltip-tab-wrapper").index(e);jQuery(e).parent().children(".tooltip-tab-wrapper").removeClass('active');jQuery(e).addClass('active');jQuery(e).parent().children(".tooltip2").removeClass('tooltip-active');jQuery(e).parent().children(".tooltip2").eq(i).addClass('tooltip-active');}
(function(){G4TV.util.Subscriber=function(interval,config){var self=this,userConfig=config,oConfig={},defaultConfig={complete:function(){Subscriber.connectionInProgress=false;},ifModified:true,type:'GET',cache:true,error:function(resp){console.warn(resp);}},Subscriber=G4TV.util.Subscriber;Subscriber.connectionInProgress=false;this.init=function(){this.interval=interval||60000;this.timer=null;jQuery.extend(oConfig,defaultConfig,userConfig);};this.start=function(){this.timer=setInterval(function(){self._connect();},this.interval);};this.stop=function(){clearInterval(self.timer);};this._connect=function(){Subscriber.connectionInProgress=true;this._connection=jQuery.ajax(oConfig);};if(config){this.init();}};})();(function($){var utils={Object:{hasValue:function(obj,val){for(item in obj){if(obj[item]===val){return true;}
return false;}}},String:{truncate:function(string,length,suffix){var suffix=suffix||"...";var length=length||50;if(!string){return;}
var a=string.split('');if(a.length>length){var truncatedStr=a.splice(0,length);truncatedStr=truncatedStr.join('');truncatedStr=truncatedStr+suffix;return truncatedStr;}else{return string;}}},Element:{isDescendantOf:function(child,ancestor){if($(child).closest(ancestor).length>0){return true;}
return false;}},Class:{extend:function(subClass,superClass){if(jQuery.isFunction(subClass)&&jQuery.isFunction(superClass)){var F=function(){};F.prototype=superClass.prototype;subClass.prototype=new F();subClass.prototype.constructor=subClass;subClass.prototype.superclass=superClass.prototype.constructor;}else{console.warn("A Subclass and Superclass must be provided");}}}};jQuery.extend(utils);})(jQuery);jQuery.fn.toggleControl=function(targetSelector,autoRun){autoRun=typeof(autoRun)=='boolean'?autoRun:true;if(autoRun){jQuery(targetSelector).toggleClass('open');}
return this.each(function(){var controlClass=jQuery(this).attr('class');jQuery(this).click(function(){jQuery(targetSelector).toggleClass('open');jQuery('.'+controlClass).toggle();return false;});if(autoRun){jQuery('.'+controlClass).toggle();}});};(function($){if(true)
G4TV.Cookie.set('js-enabled',true);G4TV.ui.mod.SecondaryNav={init:function(){this.initEvents();},initEvents:function(){var oHoverConfig={sensitivity:3,interval:0,over:over,timeout:100,out:out};jQuery('#hd-nav li:has(.subnav)').hoverIntent(oHoverConfig);jQuery('#hd-nav li div.subnav').bind('mouseout',function(){setTimeout(function(){jQuery(this).hide();},50);});function over(e){jQuery(this).find('.subnav').show();}
function out(e){jQuery(this).find('.subnav').hide();}}};G4TV.ui.ThemeManager={darkThemeFlashColors:'0xff9933,0x492b0e,0xff620e,0xffc46f',lightThemeFlashColors:'0x76daff,0x274956,0x083f6f,0x67b0cc',aThemeList:[],oParams:{themes:'#hd #theme-toggle button'},flashItems:[],init:function(params){var _this=this;this.oParams=(!params)?this.oParams:params;jQuery(this.oParams.themes).each(function(i,n){_this.aThemeList[i]='theme-'+jQuery(n).text().toLowerCase();jQuery(n).bind('click',function(e){_this.switchTheme(jQuery(n).text().toLowerCase());themePref=jQuery(n).text().toLowerCase();_this.switchTheme(themePref);this.blur();for(i=0;i<G4TV.ui.ThemeManager.flashItems.length;i++){var flashItem=jQuery('#'+G4TV.ui.ThemeManager.flashItems[i]);if(flashItem.length>0){if(themePref=='light'){flashItem[0].changeTheme(_this.lightThemeFlashColors);}else{flashItem[0].changeTheme(_this.darkThemeFlashColors);}}}});});if($("#hd #theme-toggle:visible").length>0){$('body').addClass('theme-'+G4TV.ui.ThemeManager.getCurrentPref());}},addFlashItem:function(flashId){G4TV.ui.ThemeManager.flashItems.push(flashId);},lastTheme:'',switchTheme:function(sThemeName){var _this=this;var sBodyClass=jQuery('body').attr('class');var aBodyClass=[];var sCurrentTheme='';aBodyClass=sBodyClass.split(' ');if(this.lastTheme!=sThemeName){urchinTracker('/events/switchedThemes/'+sThemeName);this.lastTheme=sThemeName;}
jQuery(aBodyClass).each(function(i,className){if(jQuery.inArray(className,_this.aThemeList)!=-1){sCurrentTheme=className;}});if(sCurrentTheme!='theme-'+sThemeName){jQuery('body').addClass('theme-'+sThemeName);jQuery('body').removeClass(sCurrentTheme);G4TV.Cookie.set('theme',sThemeName);}},getCurrentPref:function(){themePref=G4TV.Cookie.get('theme');return themePref!=null?(themePref!='light'?'dark':'light'):'dark';},getThemeFlashColors:function(){if(this.getCurrentPref()=='light'){return this.lightThemeFlashColors;}else{return this.darkThemeFlashColors;}}};G4TV.ui.SecnavDropdown={init:function(){this.oNav=$('.secondary-nav');if(this.oNav.length>0){this.initEvents();}},initEvents:function(){$(this.oNav).find('.dropdown h2 a span').bind('click',function(event){$(this).closest('li').find('.sub-menu').toggle();event.preventDefault();});}};})(jQuery);(function($){G4TV.ui.mod.SiteAlert={init:function(){var alertWrap=$('div.alert-wrap');var alertId=alertWrap.attr('id');if(G4TV.Cookie.get(alertId)==null){alertWrap.show();}
alertWrap.find('#close-alert').click(function(event){$(this).parents('div.alert-wrap').hide();G4TV.Cookie.set(alertId,'closed','86400000');event.preventDefault();return false;});}};})(jQuery);(function($){G4TV.ui.mod.SelectInput=function(el){var self=this;this.init=function(){var oContentSorter=$(this.oFilter).find('.select');var oSortMenu=$(this.oFilter).find('.options');var sortOn=function(event){if(oSortMenu.length>0){self._renderOptions($(this),event);}}
var sortOff=function(){$(oSortMenu).hide();}
var sortHoverConfig={sensitivity:2,interval:100,over:sortOn,timeout:0,out:sortOff}
$(oContentSorter).hoverIntent(sortHoverConfig);};this._renderOptions=function(oSortContent,event){var oSortMenu=$(oSortContent).find('ul');if($(oSortMenu).is(':hidden')){$(oSortMenu).show();$(oSortMenu).find('li').bind('click',function(e){var oSelected=$(oSortContent).find('.selectedText');var selectedValue=$(this).text();$(oSelected).text(selectedValue);$(self.el).find('.selectInput').attr('value',selectedValue);$(oSortMenu).hide();return false;});}}
this.init();};})(jQuery);(function($){G4TV.ui.gbl.overlay={show:function(allowClickToHide){allowClickToHide=typeof(allowClickToHide)=='boolean'?allowClickToHide:true;if($('#overlay').length<1){$('body').append('<div id="overlay"/>');$('body').addClass('overlay-open');}
$('#overlay').addClass('show').height($('body').innerHeight()).width($('body').innerWidth()).fadeTo('normal',.9);if(allowClickToHide){$('#overlay').click(function(){G4TV.ui.gbl.overlay.hide();});}},hide:function(){$('#overlay').fadeTo('fast',0).remove();$('body').removeClass('overlay-open').css('min-height','');},toggle:function(){if($('body #overlay.show').length<1){this.show();}else{this.hide();}},updateSize:function(){$('#overlay').height($('body').innerHeight()).width($('body').innerWidth());},resize:function(newHeight,newWidth){setTimeout(function(){$('#overlay').css('min-height',newHeight+'px');},1000);if(typeof(newWidth)!=='undefined'){$('#overlay').width(newWidth);}}}})(jQuery);(function($){G4TV.ui.User={loginUrl:String,verifyLoggedInUrl:String,screenName:String,forumId:String,avatarUrl:String,loggedInCallbacks:new Array(),onLoginCallbacks:new Array(),guestCallbacks:new Array(),onLogoutCallbacks:new Array(),init:function(params){this.screenName=G4TV.Cookie.get('NICKNAME');this.forumId=G4TV.Cookie.get('bbuserid');this.avatarUrl=this.forumId!=null?'http://forums.g4tv.com/avatarImage.php?u={FORUM_ID}&dateline={U_TIMESTAMP}&type=profile'.replace('{FORUM_ID}',this.forumId).replace('{U_TIMESTAMP}',parseInt(new Date().getTime().toString().substring(0,10))):'http://cache.g4tv.com/static/interactive/user-avatar-default.jpg';this.loginUrl="http://g4tv.com/ajax/authentication/login/index.html";this.verifyLoggedInUrl="http://g4tv.com/ajax/authentication/login/index.html";this.forgotPasswordUrl="http://g4tv.com/ajax/authentication/forgotpass/index.html";this.loginHtml='<div class="inline-login">'+'<form action="http://g4tv.com/ajax/authentication/login/index.html" method="post">'+'<fieldset class="username-wrap"><legend>Username:</legend><input type="text" value="Username" tabindex="1" class="identity" name="identiy" size="25">'+'<p class="remember-me-wrap"><label><input type="checkbox" name="rememberme" class="remember-me" value="1"/> Remember me</label></fieldset>'+'<fieldset class="password-wrap"><legend>Password:</legend><input type="text" value="Password" class="tmp-password" tabindex="2" name="tmp_pass" size="25">'+'<input type="password" value="" class="password" name="password" tabindex="2" size="25">'+'<p class="forgot-pass"><a href="http://g4tv.com/profile/forgot_password.aspx">Forgot password?</a></p></fieldset>'+'<p class="submit-wrap"><input type="hidden" name="ajaxLogin" value="false"/><input type="submit" tabindex="3" value="Login" class="login" name="login"/></p>'+'<br class="clear"/></form></div>';},isLoggedIn:function(sessionCheck){if(this.screenName!==null&&typeof(sessionCheck)==='undefined'){return true;}else if(this.screenName!==null){var bReturn=false;$.ajax({type:"POST",url:this.verifyLoggedInUrl,async:false,cache:false,success:function(response){if(response.toLowerCase()==="true"){bReturn=true;}}});return bReturn;}else{return false;}},verifyLogin:function(identity,password,rememberMe){var strReturn="Invalid login.";$.ajax({type:"POST",url:this.verifyLoggedInUrl,data:"identity="+urlencode(identity)+"&password="+urlencode(password)+"&rememberme="+rememberMe,async:false,success:function(response){if(response.toLowerCase()==="true"){strReturn="true";}else{strReturn=response;}}});return strReturn;},forgotPassword:function(email){var strReturn="Invalid login.";$.ajax({type:"POST",url:this.forgotPasswordUrl,data:"identity="+urlencode(email),async:false,success:function(response){if(response.toLowerCase()==="true"){strReturn="true";}else{strReturn=response;}}});return strReturn;},inlineLoginInit:function(loginFormWrap){var self=this;loginFormWrap.find('input.identity').bind('click keydown keypress keyup',function(e){if($(this).val()=="Username"){$(this).val('').addClass('focus');}}).bind('blur',function(){if($.trim($(this).val())===""){$(this).val('Username').removeClass('focus');}});loginFormWrap.find('input.password').bind('blur',function(e){if($.trim($(this).val())===""){loginFormWrap.find('input.tmp-password').val('Password').removeClass('error').show();$(this).hide();}});loginFormWrap.find('input.tmp-password').bind('keydown keypress keyup',function(e){$(this).blur().hide();setTimeout(function(){loginFormWrap.find('input.password').val('').show().focus();},50);});loginFormWrap.find('input.password').bind('blur',function(e){if($.trim($(this).val())===""){loginFormWrap.find('input.tmp-password').val('Password').removeClass('error').show();$(this).hide();}});loginFormWrap.find('form').bind('submit',function(){var identity=loginFormWrap.find('input.identity');var password=loginFormWrap.find('input.password');var rememberMe=loginFormWrap.find('input.remember-me:checked').length>0?true:false;var identityVal=$.trim(identity.val());var passwordVal=$.trim(password.val());if(identity.length<1||identityVal=='Username'||identityVal=='Enter your username...'){loginFormWrap.find('input.identity').val('Enter your username...').addClass('error').bind('focus click select keydown keypress keyup',function(e){$(this).removeClass('error').val('');});}
if(password.length<1||passwordVal=='Password'||passwordVal=='Enter your password...'){loginFormWrap.find('input.tmp-password').val('Enter your password...').addClass('error').show();loginFormWrap.find('input.password').hide();}
var loginResponse=self.verifyLogin(identityVal.toLowerCase(),passwordVal,rememberMe);if(loginResponse.toLowerCase()==="true"){$('#login-dialog').addClass('success');if(loginFormWrap.find('p.message').length>0){loginFormWrap.find('p.message').removeClass('error').addClass('success').text('Thanks for logging in, just a sec while we get you settled in.');}else{loginFormWrap.prepend('<p class="message success">Thank you for logging in, just a sec while we get you settled in.</p>');}
setTimeout(function(){jQuery('#login-dialog').fadeTo('normal',0,function(){jQuery(this).remove();});},2500);self.setScreenName(identityVal);self.executeOnLoginCallbacks();}else{if(loginFormWrap.find('p.message').length<1){loginFormWrap.prepend('<p class="message error">'+loginResponse+'</p>');}else{loginFormWrap.find('p.message').addClass('error').text(loginResponse);}}
return false;});},setScreenName:function(userScreenName){this.screenName=userScreenName;},loginDialog:function(initMsg){var self=this;if($('#login-dialog').length===0){$('body').append('<div id="login-dialog"></div>');}
$('#login-dialog').html('<div id="login-dialog-content">'+'<h2>Login to G4TV.com</h2>'+
self.loginHtml+'<br><p class="register">Or <a href="http://g4tv.com/profile/register.aspx">create a new account&#0133;</a></p>'+'<a href="#" class="close">Close</a>'+'</div>');if(typeof(initMsg)==='string'){$('#login-dialog div.inline-login').prepend('<p class="message">'+initMsg+'</p>');}
self.inlineLoginInit($('#login-dialog-content div.inline-login'));$('#login-dialog-content input.identity').focus();setTimeout(function(){$('#login-dialog-content input.identity').focus();},50);$('#login-dialog a.close').bind('click',function(){$('#login-dialog').fadeTo('normal',0).remove();return false;});},toggleDisplay:function(guestDiplay,memberDisplay){},addLoggedInCallback:function(funct){this.loggedInCallbacks.push(funct);},addOnLoginCallback:function(funct){this.onLoginCallbacks.push(funct);},addGuestCallback:function(funct){this.guestCallbacks.push(funct);},executeLoggedInCallbacks:function(){for(i=0;i<this.loggedInCallbacks.length;i++){if(jQuery.isFunction(this.loggedInCallbacks[i])){this.loggedInCallbacks[i].apply(this);}}},executeOnLoginCallbacks:function(){for(i=0;i<this.onLoginCallbacks.length;i++){if(jQuery.isFunction(this.onLoginCallbacks[i])){this.onLoginCallbacks[i].apply(this);}}},executeGuestCallbacks:function(){for(i=0;i<this.guestCallbacks.length;i++){if(jQuery.isFunction(this.guestCallbacks[i])){this.guestCallbacks[i].apply(this);}}}};})(jQuery);G4TV.ui.User.init();G4TV.ui.User.addOnLoginCallback(function(){jQuery('#user-nav').html('<ul><li>Hey, '+G4TV.ui.User.screenName+'</li>'+'<li><a href="http://g4tv.com/profile/edit_account.aspx">Edit Profile</a></li>'+'<li><a href="http://g4tv.com/profile/logout.aspx">Logout</a></li>'+'</ul>');});G4TV.Dom.ready(function(){if(!G4TV.ui.User.isLoggedIn()){jQuery('#user-nav-login').bind('click',function(){G4TV.ui.User.loginDialog();return false;});G4TV.ui.User.executeGuestCallbacks();}else{var links='';if('False'=='True'){links='<ul><li>Hey, '+G4TV.ui.User.screenName+'</li>'+'<li><a href="http://g4tv.com/myprofile/settings/index.html">Edit Profile</a></li>'+'<li><a href="http://g4tv.com/profile/logout.aspx">Logout</a></li></ul>';}else{links='<ul><li>Hey, '+G4TV.ui.User.screenName+'</li>'+'<li><a href="http://g4tv.com/profile/edit_account.aspx">Edit Profile</a></li>'+'<li><a href="http://g4tv.com/profile/logout.aspx">Logout</a></li></ul>';}
jQuery('#user-nav').html(links);G4TV.ui.User.executeLoggedInCallbacks();}});(function($){$.fn.extend({tagdragon:function(options){return this.each(function(){new $.tagdragonz(this,options);});},configure:function(options){return this.trigger("configure",[options]);},load:function(){return this.trigger("load");},clear:function(){return this.trigger("clear");}});$.tagdragonz=function(input,options){var disableLoadList=false;var disableHideResults=false;var disableKeyboardControl=false;var focusedOnForm=true;var tabFilter='';var prevTabFilter='';var filterKeyword='';var tagbox=input;var defaults={field:'tags',url:'jsontags.php',tagsep:',',enclose:'',max:10,cache:true,delay:1000,charMin:1,dblClick:true,postData:null,visible:true,dataType:'json',onRenderItem:function(row){return decodeURIComponent(row.tag);},onSelectItem:function(val){return true;},onLoadList:function(filter){return true;},onLoadedList:function(results){return true;}};var options=$.extend(defaults,options);var input=$('#'+options.field);var form=input.parents('form');var tabPrefix=options.field;$(input).attr("autocomplete","off");$(input).parents('form').attr("autocomplete","off");var lkup=document.createElement('div');$(lkup).attr({'id':'tagbox-lkup'});$(lkup).prepend('<div class="search-tabs">'+'<span class="filters">filters:</span>'+'<span class="all" id="tab_'+tabPrefix+'_">All G4tv.com</span>'+'<span class="games" id="tab_'+tabPrefix+'_Game">Games</span>'+'<span class="news" id="tab_'+tabPrefix+'_BlogThread">News</span>'+'<span class="videos" id="tab_'+tabPrefix+'_Video">Videos</span>'+'<span class="shows" id="tab_'+tabPrefix+'_Show">Shows</span>'+'</div>');$(lkup).find('div.search-tabs span:not(.filters):not(.active)').click(function(e){disableHideResults=true;tabFilter=$(this).attr('id').replace('tab_'+tabPrefix+'_','');$(lkup).find('div.search-tabs span').removeClass('active');$(this).addClass('active');switchTab(prevTabFilter,tabFilter);});$(lkup).find('div.search-tabs span.all').addClass('active');input.after(lkup);var lkuplst=document.createElement('ol');$(lkup,tagbox).append(lkuplst);$(lkuplst).find('a').live('mouseover',function(){$(lkuplst).find('li').removeClass('hl');disableKeyboardControl=true;});$(lkuplst).find('a').live('mouseout',function(){disableKeyboardControl=false;});$("#tagbox-lkup, #tagbox-lkup *").hover(function(){focusedOnForm=true;},function(){focusedOnForm=false;});var cursor=-1;var length=0;var loading=false;var loaded=false;var cacheLst=null;var inserted=false;var switchTab=function(oldTab,newTab){prevTabFilter=oldTab;tabFilter=newTab;if(boolDoUpdate(getFilter())){doLoading();updateResults(getFilter());}
disableHideResults=true;setTimeout(function(){input.focus();},50);setTimeout(function(){disableHideResults=false;},500);}
var hideLkup=function(){if(!disableHideResults){$(lkup,tagbox).hide();form.find('div.loading').hide();loaded=false;cacheLst=null;inserted=false;}};var insertTag=function(filter,tag){var cur=input.val();var words=tag.split(' ').length;var enclose=(words>1)?options.enclose.length>0?options.enclose:'':'';cur=cur.replace(eval('/'+filter+'$/i'),enclose+tag+enclose);input.val(cur);cursor=-1;}
var addItem=function(val,filter,index){var liStart='<li class="'+(index%2==0?'odd':'even');var liContent='<a href="'+(typeof(val.url)!=="undefined"?val.url:'#')+'">'+'<span class="keyword">'+val.tag.replace(eval('/('+filter+')/gi'),"<em>$1</em>")+'</span>'
if(typeof(val.type)!=="undefined"){switch(val.type){case'Game':liStart+=' game';if(typeof(val.image)!=="undefined"&&val.image.indexOf("Box_art_graphic.jpg")==-1){liStart+=' has-image';liContent+='<span class="image"><img src="'+val.image+'" alt=""/></span>';}
if(typeof(val.platform)!=="undefined"){liStart+=' '+val.platform.toLowerCase();liContent+='<span class="platforms"><span class="'+val.platform.toLowerCase()+'">'+val.platform+'</span></span>';}
break;}}
return liStart+'">'+liContent+'</a></li>';};var loadList=function(){var filter=getFilter();if(boolDoUpdate(filter)){doLoading();inserted=false;options.onLoadList(filter);updateResults(filter);}
jQuery('#tagbox-lkup .view-all-results p a').unbind('click').bind('click',function(){window.location=jQuery(this).attr('href');});};var doLoading=function(){if(form.find('div.loading').length<1){form.append('<div class="loading">&nbsp;</span>');form.find('div.loading').show();}else{form.find('div.loading').show();}
$(lkuplst).find('li').fadeTo('fast',.1);}
var getFilter=function(){return parseFilter(input.val());}
var boolDoUpdate=function(filter){if(filter==filterKeyword&&tabFilter==prevTabFilter){return false;}else{filterKeyword=filter;prevTabFilter=tabFilter;return true;}}
var updateResults=function(filter){fitler=$.trim(filter);$.ajax({type:"POST",url:options.url,data:$.extend({tag:encodeURIComponent(filter),max:options.max,type:tabFilter},options.postData),dataType:options.dataType,cache:options.cache,success:function(json){length=json.results.length;cacheLst=json;cursor=-1;var resultsHtml='';var selectedSection=jQuery('#tagbox-lkup div.search-tabs span.active');var sectionText=selectedSection.text();if(json.results.length>0){for(i=0;i<json.results.length&&i<options.max;i++){resultsHtml+=addItem(json.results[i],filter,i);}}else{if(filter!=""&&filter.length>0){if(sectionText=="All G4tv.com"){noResultsMsg='Sorry, we don\'t have any results for "'+getFilter()+'".';}else{noResultsMsg='Sorry, we don\'t have any results for "'+getFilter()+'" in '+sectionText.toLowerCase()+'.';}
resultsHtml+='<li class="no-results">'+noResultsMsg+'</li>';}else{hideLkup();return;}}
$(lkuplst).html(resultsHtml);if(json.totalResults>json.results.length){if(jQuery('#tagbox-lkup div.view-all-results').length<1){jQuery('#tagbox-lkup ol').after('<div class="view-all-results"><p></p></div>');}
if(sectionText=="All G4tv.com"){viewAllText='View all %d search results';}else{viewAllText='View all %d search results in '+sectionText.toLowerCase();}
var searchFilter=selectedSection.attr('id').replace('tab_'+tabPrefix+'_','');var searchFilterStr="";if(searchFilter!=""){searchFilterStr="&type="+searchFilter;}
jQuery('#tagbox-lkup .view-all-results p').html('<a href="http://g4tv.com/search/index.html?q='+jQuery.trim(jQuery('#hd-suggestive-search').val()).replace(' ','+')+searchFilterStr+'">'+viewAllText.replace('%d',addCommas(json.totalResults))+'</a> <span class="arrows">&raquo;</span>');jQuery('#tagbox-lkup .view-all-results p a').unbind('click').bind('click',function(){window.location=jQuery(this).attr('href');});jQuery('#tagbox-lkup .view-all-results').show();}else{jQuery('#tagbox-lkup .view-all-results').hide();}
loading=false;loaded=true;form.find('div.loading').hide();options.onLoadedList(json);$(lkup,tagbox).show();},error:function(XMLHttpRequest,textStatus,errorThrown){length=0;cacheLst=null;loading=false;loaded=false;options.onLoadedList(false);}});}
var parseFilter=function(val){if(options.tagsep.length==0)return val;if(val.indexOf(options.tagsep)>-1){if(options.tagsep==' ')
val=val.substring(val.lastIndexOf(options.tagsep)+1,val.length);else
val=jQuery.trim(val.substring(val.lastIndexOf(options.tagsep)+1,val.length));}
return val;}
var triggerLoad=function(){if(inserted)return false;else{var filter=parseFilter(input.val());if($.trim(filter).length>=options.charMin){loading=true;setTimeout(function(){loadList()},options.delay);}else{hideLkup();}}}
input.focus(function(e){$('#hd-nav .subnav').hide();var filter=getFilter();if(filter!==""&&!disableLoadList){if($(lkup).find('li').length>0){$(lkup).show();jQuery('#tagbox-lkup .view-all-results p a').unbind('click').bind('click',function(){window.location=jQuery(this).attr('href');});}else{triggerLoad();jQuery('#tagbox-lkup .view-all-results p a').unbind('click').bind('click',function(){window.location=jQuery(this).attr('href');});}
disableLoadList=false;}else{hideLkup();}});$(input).click(function(e){$('#hd-nav .subnav').hide();});$(input).blur(function(e){if(!focusedOnForm){setTimeout(function(){hideLkup();},100);}});var downCycle;var upCycle;var downKeyPress=function(e){cursor=((cursor+1)<length)?cursor+1:0;if(cursor<length){$('li.hl',tagbox).removeClass('hl');$('li:eq('+cursor+')',tagbox).addClass('hl');e.preventDefault();}}
var upKeyPress=function(e){cursor=(cursor-1>=0)?cursor-1:length-1;if(cursor>=0){$('li.hl',tagbox).removeClass('hl');$('li:eq('+cursor+')',tagbox).addClass('hl');e.preventDefault();}}
var handleSpecials=function(e){var e=e||window.event;var key=e.charCode||e.keyCode;if(!loaded)return true;switch(key){case 13:if($('li.hl a',tagbox).length===1){window.location=$('li.hl a',tagbox).attr('href');}else{$(input).parents('form').submit();}
e.preventDefault();break;case 40:if(!disableKeyboardControl){downKeyPress(e);}else{cursor=-1;}
break;case 38:if(!disableKeyboardControl){upKeyPress(e);}else{cursor=-1;}
break;case 27:hideLkup();e.preventDefault();break;}};var handleSpecialsEnd=function(e){var e=e||window.event;var key=e.charCode||e.keyCode;if(!loaded)return true;switch(key){case 40:clearInterval(downCycle);break;case 38:clearInterval(upCycle);break;}};var handleKey=function(e){$('#hd-nav .subnav').hide();var e=e||window.event;var key=e.charCode||e.keyCode;if(key>8&&key<46&&key!=32){return false;}
if(loading==false){triggerLoad();}
disableLoadList=false;};$(input).keyup(handleKey);$(input).keydown(handleSpecials);$(input).keyup(handleSpecialsEnd);$(tagbox).bind("configure",function(){$.extend(options,arguments[1]);})
$(tagbox).bind("load",function(){triggerLoad();})
$(tagbox).bind("clear",function(){hideLkup();})};})(jQuery);