var TV=new Class({initialize:function(){$$("#days input, #channelblock input").each(function(el,idx){el.addEvent("change",function(){Tv.changed();});});$$("#time input").each(function(el,idx){el.addEvent("change",function(){Tv.show();});});this.setSavedValues();},setSavedValues:function(){var hash=window.location.hash;if(!hash){return;}var params=hash.substring(1).parseQueryString();var genre=params["genre"];if(genre){$$("#genre input").each(function(el,idx){el.set("checked","");el.getParent().removeClass("selected");
});$(genre).set("checked","checked");$(genre).getParent().addClass("selected");this.toggleGenre(genre);}var time=params["time"];if(time){$$("#time input").each(function(el,idx){el.set("checked","");el.getParent().removeClass("selected");});$(time).set("checked","checked");$(time).getParent().addClass("selected");}var date=params["date"];if(date){$$("#days input").each(function(el,idx){if(date.contains(el.value)){el.set("checked","checked");}else{el.set("checked","");}});}var channels=params["channel"];
if(channels){channels.each(function(el,idx){if($(el)){$(el).set("checked","checked");}});}this.show();},toggleGenre:function(id){$("channelblock").set("class","");$("channelblock").set("class","clearfix g"+id);},show:function(){var days=new Array();var channels=new Array();var time=$$("#time .selected input")[0].value;if(time=="now"){$$("#days input").each(function(el,idx){if(idx==0&&!el.checked){el.checked=true;}else{if(idx!=0&&el.checked){el.checked=false;}}});}$$("#channelblock input").each(function(el,idx){if(el.checked&&el.getParent().getStyle("display")=="none"){el.set("checked","");
}});queryString=$("tvselector").toQueryString();window.location.hash=queryString;$$("#tvguide").set("text","");$("openbutton").disabled="disabled";$$("#tvguide").setStyle("visibility","visible");$$("#tvguide").set("text","");query="schedule.xl?"+queryString;var req=new Request.HTML({url:query,update:$("tvguide")}).send();},selectAll:function(){$$("#channelblock input").each(function(el,idx){if(el.getParent().getStyle("display")!="none"){el.checked=true;}});this.changed();},clear:function(){var i=true;
$$("#channelblock label input").each(function(el,idx){if(el.getParent().getStyle("display")!="none"){if(i){el.checked=true;i=false;}else{el.checked=false;}}});this.changed();},changed:function(){$$("#tvguide").setStyle("visibility","hidden");var channels=false,days=false;$$("#days input").each(function(el,idx){if(el.checked){days=true;}});$$("#channelblock input").each(function(el,idx){if(el.checked&&el.getParent().getStyle("display")!="none"){channels=true;}});if(channels&&days){$("openbutton").disabled=null;
}else{$("openbutton").disabled="disabled";}},print:function(){queryString=$("tvselector").toQueryString();document.location.href="print.xl?"+queryString;}});var Tv;window.addEvent("domready",function(){Tv=new TV();});
