Syn.TvGrid=Syn.TvGrid||{};Syn.TvListingsBar={filterType:'',timeSlot:'',bsts:new Date(),showPopup:function(asset_id){this.syn_popup.popup({component:'{layout=doublewide}tv_vod_popup:asset_id='+asset_id,draggable:true,closeable:true,resizable:false,show_title:false,show_loading:true,center:'screen'},this);return false},filterGridBy:function(filterType,elm){$("#tv_channel .tv_search_filter a").css('background','#2D5575');elm.css('background','#234159');Syn.TvListingsBar.filterType=filterType;Syn.TvListingsBar.updateGrid()},updateGrid:function(){var cname='';var st;var sDay=$("#tv_channel select.tv_search_date option:selected").val();var sTime=$("#tv_channel select.tv_search_time option:selected").val();$("#tv_channel div.tv_search_whatson a").removeClass("tv_white_arrow");switch(Syn.TvListingsBar.timeSlot){case'primetime':cname="tv_search_primetime";st=Syn.TvGrid.pt_ts;sTime=Syn.TvGrid.pt_hr;sDay=Syn.TvGrid.pt_day_ts;break;case'now':var bets=new Date();var st3,et3,curhr;cname="tv_show_now";st=Syn.TvGrid.now_ts+(((et3=Math.floor(bets.getTime()/1800000))-(st3=Math.floor(Syn.TvListingsBar.bsts.getTime()/1800000)))*1800);sTime=((curhr=(Syn.TvGrid.now_hr+(Math.floor(et3/ 2) - Math.floor(st3 /2))))%24);sDay=(Syn.TvGrid.now_day_ts+(((curhr>23)?Math.floor(curhr/24):0)*86400));break;default:case'select':var tdiff=(Syn.TvGrid.trans_hr-Math.floor(sDay/3600));st=parseInt(sDay,10)+parseInt(sTime*3600,10)+(((tdiff>=0)&&(sTime>tdiff))?parseInt(Syn.TvGrid.tfix,10):0);break}if(cname){$("#tv_channel div.tv_search_whatson a."+cname).addClass(cname?'tv_white_arrow':'')}$("#tv_channel select.tv_search_time option[value="+sTime+"]").attr('selected','selected');$("#tv_channel select.tv_search_date option[value="+sDay+"]").attr('selected','selected');Syn.TvGrid.s_ts=st;if(Syn.TvListingsBar.filterType=='all'){Syn.TvListingsBar.filterType='';Syn.TvGrid.batch=Syn.Tv.Lib.curChanRange}if(typeof Syn.Tv.Lib.hideDiv=='function'){Syn.Tv.Lib.hideDiv()}Syn.Tv.Lib.requestGrid(Syn.TvGrid.s_ts,(parseInt(Syn.TvGrid.s_ts,10)+parseInt(Syn.TvGrid.gridwindows,10)),Syn.TvGrid.container,Syn.TvGrid.provider,Syn.TvGrid.device,'',Syn.TvGrid.displaymode,Syn.TvGrid.batch.toString(),Syn.TvGrid.gridsize,Syn.TvGrid.zipcode,Syn.TvGrid.gridview,Syn.TvListingsBar.filterType,'1')},toggleGridView:function(){Syn.TvGrid.gridview=$("#tv_gridview option:selected").val();Syn.TvListingsBar.updateGrid()},changeNumChannels:function(){Syn.TvGrid.gridsize=$("#tv_gridsize option:selected").val();Syn.TvGrid.batch=0;Syn.TvListingsBar.updateViewSettings();Syn.TvListingsBar.updateGrid()},toggleSettings:function(){$("#tv_channel #tv_settings_menu").toggle();$("#tv_channel #tv_advanced_search").hide();if($("#tv_channel #tv_advanced_search").css('display')=='block'){Syn.TvListingsBar.toggleAdvancedSearch()}$("#tv_channel .tv_search_whatson").show();$("#tv_channel .tv_search_filter").show();$("#tv_channel .tv_search_date").show();$("#tv_channel .tv_search_time").show()},toggleAdvancedSearch:function(){if($("#tv_channel #tv_settings_menu").css('display')=='block'){$("#tv_channel #tv_settings_menu").hide()}else{$("#tv_channel #tv_advanced_search").toggle()}if($("#tv_channel #tv_advanced_search").css('display')=='block'){$("#basic_search_partial_match").remove();$("#tv_channel .tv_search_whatson").hide();$("#tv_channel .tv_search_filter").hide();$("#tv_channel .tv_search_date").hide();$("#tv_channel .tv_search_time").hide()}else{$("#tv_channel .tv_search_whatson").show();$("#tv_channel .tv_search_filter").show();$("#tv_channel .tv_search_date").show();$("#tv_channel .tv_search_time").show()}},toggleDvrMenu:function(){Syn.Rd.Lib.menuAjax()},updateViewSettings:function(){$.post('customize_api.php',{'tv_gridsize':Syn.TvGrid.gridsize,'submit':'Go'})},updateGridView:function(){$.post('customize_api.php',{'tv_gridview':$("#tv_gridview option:selected").val(),'submit':'Go'})},init:function(){this.syn_popup=new Syn.Popup();if(Syn.TvGrid.dvr=="open"){Syn.Rd.Lib.menuAjax()}$("#tv_channel a.tv_search").click(function(){Syn.TvListingsBar.toggleAdvancedSearch();return false});$("#tv_channel #dvr_menu").click(function(){Syn.TvListingsBar.toggleDvrMenu();return false});$("#tv_channel a.tv_settings").click(function(){Syn.TvListingsBar.toggleSettings();return false});$("#tv_gridview").change(function(){Syn.TvListingsBar.updateGridView();Syn.TvListingsBar.toggleGridView();return false});$("div.advclose a").click(function(){Syn.TvListingsBar.toggleAdvancedSearch();$("#tv_settings_menu").hide();return false});$("a.advreset").click(function(){Syn.TvListingsBar.toggleAdvancedSearch();return false});$("#tv_gridsize").change(function(){Syn.TvListingsBar.changeNumChannels();return false});$("#tv_channel a.tv_search_primetime").click(function(){Syn.TvListingsBar.timeSlot='primetime';Syn.TvGrid.batch=Syn.Tv.Lib.curChanRange;Syn.TvListingsBar.updateGrid();return false});$("#tv_channel a.tv_show_now").click(function(){Syn.TvListingsBar.timeSlot='now';Syn.TvGrid.batch=Syn.Tv.Lib.curChanRange;Syn.TvListingsBar.updateGrid();return false});$("#tv_channel select.tv_search_time").change(function(){Syn.TvListingsBar.timeSlot='select';Syn.TvGrid.batch=Syn.Tv.Lib.curChanRange;Syn.TvListingsBar.updateGrid();return false});$("#tv_channel select.tv_search_date").change(function(){Syn.TvListingsBar.timeSlot='select';Syn.TvGrid.batch=Syn.Tv.Lib.curChanRange;Syn.TvListingsBar.updateGrid();return false});$("#tv_channel .tv_search_filter a.tv_filter_sports").click(function(){Syn.TvListingsBar.filterGridBy('sports',$(this));return false});$("#tv_channel .tv_search_filter a.tv_filter_news").click(function(){Syn.TvListingsBar.filterGridBy('news',$(this));return false});$("#tv_channel .tv_search_filter a.tv_filter_comedy").click(function(){Syn.TvListingsBar.filterGridBy('comedy',$(this));return false});$("#tv_channel .tv_search_filter a.tv_filter_kids").click(function(){Syn.TvListingsBar.filterGridBy('kids',$(this));return false});$("#tv_channel .tv_search_filter a.tv_filter_hdtv").click(function(){Syn.TvListingsBar.filterGridBy('hdtv',$(this));return false});$("#tv_channel .tv_search_filter a.tv_filter_education").click(function(){Syn.TvListingsBar.filterGridBy('educational',$(this));return false});$("#tv_channel .tv_search_filter .tv_filter_all").click(function(){Syn.TvListingsBar.filterGridBy('all',$(this));return false})}};$(document).ready(function(){Syn.TvListingsBar.init()});