//js credits located here: /CommonUI/Scripts/global/_credits.txt
// ---------------- Begin jQuery extentions
(function($){$.fn.killTargets=function(target){if(target==null){target="contents";}
if(target=="contents"){this.find("a").removeAttr("target");}else if(target=="self"){this.removeAttr("target");} return this;}})(jQuery);
// ---------------- End jQuery extentions
var gQuery = "";

$(document).ready(function() {
	// ---------------- Remove cms auto insertion of target="_blank" on all links
	$(".EditorialText").killTargets(); // requires the custom jQuery extention above.
	
	// ---------------- Load recipe video on featured image
	$(".RecipeVideo").click(function(){
		pageTracker._trackEvent('Recipe Page', 'Video', 'WatchNow');
		var countScriptsLoaded = 0;
		var neededScripts = [
			"/CommonUI/Scripts/canwestPlayer/js/jquery.scrollTo-min.js",
			"/CommonUI/Scripts/canwestPlayer/js/thePlatform.min.js",
			"/CommonUI/Scripts/canwestPlayer/js/adSyncLibrary.js?v=14625",
			"/CommonUI/Scripts/canwestPlayer/js/canwestPlayer.js?rev=14080",
			"/CommonUI/Scripts/canwestPlayer/js/cwpFoodRecipe.js?rev=11451"
		];
		function loadRecipeFeaturedPlayer() {
			countScriptsLoaded++;
			if (countScriptsLoaded == neededScripts.length) {
				// If we need to open the player window, do so before we try to load the flash
				if ($("#cwpVCPlayer").css("display")=="none"){
					$("#FeatureContent").slideUp();
					$("#cwpVCPlayer").slideDown("normal",function(){
						cwpInsertPlayer({
							PID: "6yC6lGVHaVA8oWSm1F9PaIYc9tOTzDqY",
							pidList: cwpParamsPidList,
							videoWidth: 460,
							videoHeight: 460/16*9+20,
							site: "foodtv.ca",
							maxPerRow: 3,
							hasMainVideo: true
						});
					});
				}else{
					cwpInsertPlayer({
						PID: "6yC6lGVHaVA8oWSm1F9PaIYc9tOTzDqY",
						pidList: cwpParamsPidList,
						videoWidth: 460,
						videoHeight: 460/16*9+20,
						site: "foodtv.ca",
						maxPerRow: 3,
						hasMainVideo: true
					});
				}
			}
		}
		// Please note: there is a function in a function on purpose
		for (var i=0;i<neededScripts.length;i++){
			jQuery.getScript(neededScripts[i],function(){loadRecipeFeaturedPlayer()});
		}
		
		$(this).delay(5000,function(){tpController.addEventListener("OnReleaseEnd",function() { $("#cwpVCPlayer").css({display: 'none'}); $("#FeatureContent").css({display: 'block'}); return false; }); });
		return false;
	});

// ---------------- Load JS-Kit Echo comments and comments count script when necessary
	if($(document).find(".js-kit-comments")[0]) {
		// Make sure we target the correct instance of community server
		var serverLookup = {
			"dev":"http://foodcommunity.dev.canada.com/",
			"qa":"http://foodcommunity.dev.canada.com/",
			"staging":"http://community.staging.foodnetwork.ca/",
			"www":"http://community.foodnetwork.ca/"
		};
		var urlRoot = window.location.href;
		var targetCSUrl = serverLookup.www;
		for (var key in serverLookup){
			if (serverLookup.hasOwnProperty(key)){
				if (urlRoot.indexOf(key)>=0){
					targetCSUrl = serverLookup[key];
					break;
				}
			}
		}
		jQuery.ajax({ type: "GET", url: targetCSUrl + "themes/foodtv/common/echobinding.aspx", dataType: "script", success: function() { jQuery.getScript("http://js-kit.com/for/foodnetwork.ca/comments.js"); } });
	}
	if($(document).find(".js-kit-comments-count")[0]) { jQuery.getScript("http://js-kit.com/comments-count.js"); }
	
	// Initialising the main search bar in the header
	$(".css-dropdown").each( function() { createDropDown($(this).attr("id")); });
	$("input.styled").each( function() { $(this).styledInput(); });
	eventsMainSearch();
});

// ---------------- start global search
function eventsMainSearch() {
	
	$("#mainSearchClear").hide();
	
	$("#search-input-header").keydown(function(event){
		//alert("keydown");
		if (event.keyCode == 13) {
			//alert("Enter Key");
			if ($("#search-input-header").val() == ""){
			$("#search-input-header").focus();
			} else { 
				// Do not remove this from here and place in inline onclick.
				return mainSearch();
			}
		}  
	});
	var searchHeaderText = $("#search-input-header").attr("value");
	$("#search-input-header").focus(function(){
		$("#mainSearchClear").fadeIn();
		$(this).addClass("focused");
		if($(this).val() == searchHeaderText){
			$(this).val("").css("font-style", "normal");
		}
	});
	$("#search-input-header").blur(function(){
	if (($("#search-input-header").val() == searchHeaderText) || ($("#search-input-header").val() == "")){
		$("#mainSearchClear").fadeOut();
	}
		$(this).removeClass("focused");
		if($(this).val() == ""){
			$(this).val(searchHeaderText).css("font-style", "italic");
		}
	});
	$('#mainSearchClear').click(function() {
		if (($("#search-input-header").val() != searchHeaderText) && ($("#search-input-header").val() != "")){
			$("#search-input-header").val("").css("font-style", "normal");
			$("#search-input-header").focus();
		}
	});
	$("#searchsubmit").click(function(){
	if (($("#search-input-header").val() == searchHeaderText) || ($("#search-input-header").val() == "")){
		$("#search-input-header").focus();
		} else { 
			// Do not remove this from here and place in inline onclick.
			return mainSearch();
		}
	});
}
function createDropDown(ddID){
    var source = $("#" + ddID);
    var selected = source.find("option[selected]");
    var options = $("option", source);
    
    $("#" + $("#" + ddID).parent().attr("id")).append('<dl id="target-' + ddID + '" class="dropdown"></dl>')
    $("#target-" + ddID).append('<dt><a href="#">' + selected.text() + 
        '<span class="value">' + selected.val() + 
        '</span></a></dt>')
    $("#target-" + ddID).append('<dd><ul class="NoBullet"></ul></dd>')

    options.each(function(){
        $("#target-" + ddID + " dd ul").append('<li><a href="#">' + 
            $(this).text() + '<span class="value">' + 
            $(this).val() + '</span></a></li>');
    });
	
	 $("#target-" + ddID + ".dropdown dt a").click(function() {
        $("#target-" + ddID + ".dropdown dd ul").slideToggle('fast');
		return false;
    });

    $(document).bind('click', function(e) {
        var $clicked = $(e.target);
        if (! $clicked.parents().hasClass("dropdown"))
            $("#target-" + ddID + ".dropdown dd ul").hide();
    });
                
    $("#target-" + ddID + ".dropdown dd ul li a").click(function() {
        var text = $(this).html();
        $("#target-" + ddID + ".dropdown dt a").html(text);
        $("#target-" + ddID + ".dropdown dd ul").hide();
        
        var source = $("#" + ddID);
        source.val($(this).find("span.value").html())
			 source.change();
		return false;
    });
}
jQuery.fn.fadeToggle = function(speed, easing, callback) { 
	return this.animate({opacity: 'toggle'}, speed, easing, callback); 
};

// -- DELAY PLUGIN FUNCTION
jQuery.fn.delay = function(time,func){
	this.each(function(){
		setTimeout(func,time);
	});
	
	return this;
};
function mainSearch() {
	var searchCollection = $("#siteSearchList :selected").val();
	//alert("Main Search Submit \nSearching: " + $("#search-input-header").val() + "\nCollection: " + searchCollection);
	
	//var searchString = $.URLEncode($("#search-input-header").val());
	//$("#results").load("searchresults.html?q=" + searchString + "&id=" + rnd() + " #searchResults");		
	switch(searchCollection)
	{
	case "FoodTV_Recipes":
	  window.location = "/search/recipes/results.html?q=" + $.URLEncode($("#search-input-header").val());
	  break;
	case "FoodTV_Shows":
	  window.location = "/search/shows/results.html?q=" + $.URLEncode($("#search-input-header").val());
	  break;
	case "FoodTV_Guides":
	  window.location = "/search/guides/results.html?q=" + $.URLEncode($("#search-input-header").val());
	  break;
	case "FoodTV_Video":
	  window.location = "/search/videos/results.html?q=" + $.URLEncode($("#search-input-header").val());
	  break;
	case "FoodTV_Blogs":
	  //window.location = "http://community.foodnetwork.ca/search/SearchResults.aspx?q=" + $.URLEncode($("#search-input-header").val());
	  window.location = "/search/community/results.html?q=" + $.URLEncode($("#search-input-header").val());
	  break;
	default:
	  window.location = "/search/results.html?q=" + $.URLEncode($("#search-input-header").val());
	}
}
function rnd(){ return String((new Date()).getTime()).replace(/\D/gi,'') }
// ---------------- end global search		
// -------------------------------------------------------------------------		
// ---------------- start URL ENCODING & DECODING PLUGIN
$.extend({URLEncode:function(c){var o='';var x=0;c=c.toString();var r=/(^[a-zA-Z0-9_.]*)/;while(x<c.length){var m=r.exec(c.substr(x));if(m!=null&&m.length>1&&m[1]!=''){o+=m[1];x+=m[1].length;}else{if(c[x]==' ')o+='+';else{var d=c.charCodeAt(x);var h=d.toString(16);o+='%'+(h.length<2?'0':'')+h.toUpperCase();}x++;}}return o;},URLDecode:function(s){var o=s;var binVal,t;var r=/(%[^%]{2})/;while((m=r.exec(o))!=null&&m.length>1&&m[1]!=''){b=parseInt(m[1].substr(1),16);t=String.fromCharCode(b);o=o.replace(m[1],t);}return o;}});

	jQuery.fn.fadeToggle = function(speed, easing, callback) { 
			return this.animate({opacity: 'toggle'}, speed, easing, callback); 
	}; 
// ---------------- end URL ENCODING & DECODING PLUGIN	
// -------------------------------------------------------------------------	
// ---------------- start STYLED CHECK BOXES AND RADIO BUTTONS
jQuery.fn.styledInput=function(A){
	A=jQuery.extend({className:"styledBoxes",display:"list"},A);
	
	$(this).each(function(){
		$label=$('label[for="'+$(this).attr("id")+'"]');
		$label.prepend("<span class='holderWrap'><span class='holder'></span></span>");
		
		if($(this).is(":checked")){
			$label.addClass("checked")
		}
		$label.addClass(A.className).addClass($(this).attr("type")).addClass(A.display);
		
		$(this).addClass("hiddenCheckbox");
		$label.bind("click",function(){
			$("input#"+$(this).attr("for")).triggerHandler("click");
			
			if($("input#"+$(this).attr("for")).is(":checkbox")){
				$(this).toggleClass("checked");
				$("input#"+$(this).attr("for")).checked=true;
				$(this).find("span.holder").css("top",0)
				}
			else{
				$toCheck=$("input#"+$(this).attr("for"));
				$('input[name="'+$toCheck.attr("name")+'"]').each(function(){
					$('label[for="'+$(this).attr("id")+'"]').removeClass("checked")
				});
			$(this).addClass("checked");
			$toCheck.checked=true}});
			$("input#"+$label.attr("for")).bind("keypress",function(B){
				if(B.keyCode==32){
					if($.browser.msie){
						$('label[for="'+$(this).attr("id")+'"]').toggleClass("checked")
					}
					else{
							$(this).trigger("click")
						}
				return false}
			})
		})
	};
checkAllstyledInput=function(B,A){
	if($(B).is(":checked")){
		$(A).find("input[type=checkbox]:not(:checked)").each(function(){
			$('label[for="'+$(this).attr("id")+'"]').trigger("click");
	
			if($.browser.msie){
				$(this).attr("checked","checked")}
			else{
				$(this).trigger("click")}
			})
	}
	else{
		$(A).find("input[type=checkbox]:checked").each(function(){
			$('label[for="'+$(this).attr("id")+'"]').trigger("click");
			if($.browser.msie){
				$(this).attr("checked","")
			}
			else{
			$(this).trigger("click")
			}
		})
	}
};
// ---------------- end STYLED CHECK BOXES AND RADIO BUTTONS

// ------------------------------- HIGHLIGHT TERMS (FOR GLOSSARY)
	
	(function($){ 
	$.fn.extend({
		highlight: function(strings) {
 			
 			function findText(node, string) {
				
			  	if (node.nodeType == 3) {					 
			   		 return searchText(node, string);	
				}
			  	else if (node.nodeType == 1 && node.childNodes && !(/(script|style)/i.test(node.tagName))) {
			   		for (var i = 0; i < node.childNodes.length; ++i) {
			    		i += findText(node.childNodes[i], string);						
			   		}
			  	}
			  	return 0;
 			}
 
		   	function searchText(node, string){
		  		var position = node.data.toUpperCase().indexOf(string);
		   		if (position >= 0) {
					keyFound++;
					if (keyFound == 1) {
		    			return highlight(node, position, string);
					}
				}
		    	else
		    		return 0;
		  	}
  	
		  	 function highlight(node, position, string){
				
		 		var spannode = document.createElement('a');
		    	spannode.className = 'tt';
				spannode.setAttribute('href', '/guides/resources/glossary/index.html#' + $.URLEncode(string.toLowerCase()));
		    	var middlebit = node.splitText(position);
		    	var endbit = middlebit.splitText(string.length);
		    	var middleclone = middlebit.cloneNode(true);
				
				spannode.appendChild(middleclone);
				middlebit.parentNode.replaceChild(spannode, middlebit);
				
				return 1;
		 	}
 				
			var keyFound = 0;

			return this.each(function() {
			 	if(typeof strings == 'string')
			 		findText(this, strings.toUpperCase());
			 	else
			 		for (var i = 0; i < strings.length; ++i) { 
						findText(this, strings[i].toUpperCase());
						keyFound = 0;
					}
			});
        }
    }); 
})(jQuery);
	
//------------------ END HIGHLIGHT

// ---------------- start titlecase
function toTitleCase(str){return str.replace(/\w\S*/g,function(txt){return txt.charAt(0).toUpperCase()+txt.substr(1).toLowerCase()})}
// ---------------- end titlecase
// ---------------- start query string grabber function
window.location.querystring=(function(){var collection={};var querystring=window.location.search;if(!querystring){return{toString:function(){return""}}}querystring=decodeURI(querystring.substring(1));var pairs=querystring.split("&");for(var i=0;i<pairs.length;i++){if(!pairs[i]){continue}var seperatorPosition=pairs[i].indexOf("=");if(seperatorPosition==-1){collection[pairs[i]]=""}else{collection[pairs[i].substring(0,seperatorPosition)]=pairs[i].substr(seperatorPosition+1)}}collection.toString=function(){return"?"+querystring};return collection})();
// ---------------- end query string grabber function
// -------------------------------------------------------------------------
// ---------------- start UL, OL LIST COLUMNIZER
jQuery.fn.makeacolumnlists=function(settings){settings=jQuery.extend({cols:3,colWidth:0,equalHeight:false,startN:1},settings);if(jQuery('> li',this)){this.each(function(y){var y=jQuery('.li_container').size(),height=0,maxHeight=0,t=jQuery(this),classN=t.attr('class'),listsize=jQuery('> li',this).size(),percol=Math.ceil(listsize/settings.cols),contW=t.width(),bl=(isNaN(parseInt(t.css('borderLeftWidth'),10))?0:parseInt(t.css('borderLeftWidth'),10)),br=(isNaN(parseInt(t.css('borderRightWidth'),10))?0:parseInt(t.css('borderRightWidth'),10)),pl=parseInt(t.css('paddingLeft'),10),pr=parseInt(t.css('paddingRight'),10),ml=parseInt(t.css('marginLeft'),10),mr=parseInt(t.css('marginRight'),10),col_Width=Math.floor((contW-(settings.cols-1)*(bl+br+pl+pr+ml+mr))/settings.cols);if(settings.colWidth){col_Width=settings.colWidth;}
var colnum=1,percol2=percol;jQuery(this).addClass('li_cont1').wrap('<div id="li_container'+(++y)+'" class="li_container"></div>');if(settings.equalHeight=='li'){jQuery('> li',this).each(function(){var e=jQuery(this);var border_top=(isNaN(parseInt(e.css('borderTopWidth'),10))?0:parseInt(e.css('borderTopWidth'),10));var border_bottom=(isNaN(parseInt(e.css('borderBottomWidth'),10))?0:parseInt(e.css('borderBottomWidth'),10));height=e.height()+parseInt(e.css('paddingTop'),10)+parseInt(e.css('paddingBottom'),10)+border_top+border_bottom;maxHeight=(height>maxHeight)?height:maxHeight;});}
for(var i=0;i<=listsize;i++){if(i>=percol2){percol2+=percol;colnum++;}
var eh=jQuery('> li:eq('+i+')',this);eh.addClass('li_col'+colnum);if(jQuery(this).is('ol')){eh.attr('value',''+(i+settings.startN))+'';}
if(settings.equalHeight=='li'){var border_top=(isNaN(parseInt(eh.css('borderTopWidth'),10))?0:parseInt(eh.css('borderTopWidth'),10));var border_bottom=(isNaN(parseInt(eh.css('borderBottomWidth'),10))?0:parseInt(eh.css('borderBottomWidth'),10));mh=maxHeight-(parseInt(eh.css('paddingTop'),10)+parseInt(eh.css('paddingBottom'),10)+border_top+border_bottom);eh.height(mh);}}
jQuery(this).css({cssFloat:'left',width:''+col_Width+'px'});for(colnum=2;colnum<=settings.cols;colnum++){if(jQuery(this).is('ol')){jQuery('li.li_col'+colnum,this).appendTo('#li_container'+y).wrapAll('<ol class="li_cont'+colnum+' '+classN+'" style="width: '+col_Width+'px;"></ol>');}else{jQuery('li.li_col'+colnum,this).appendTo('#li_container'+y).wrapAll('<ul class="li_cont'+colnum+' '+classN+'" style="width: '+col_Width+'px;"></ul>');}}
if(settings.equalHeight=='ul'||settings.equalHeight=='ol'){for(colnum=1;colnum<=settings.cols;colnum++){jQuery('#li_container'+y+' .li_cont'+colnum).each(function(){var e=jQuery(this);var border_top=(isNaN(parseInt(e.css('borderTopWidth'),10))?0:parseInt(e.css('borderTopWidth'),10));var border_bottom=(isNaN(parseInt(e.css('borderBottomWidth'),10))?0:parseInt(e.css('borderBottomWidth'),10));height=e.height()+parseInt(e.css('paddingTop'),10)+parseInt(e.css('paddingBottom'),10)+border_top+border_bottom;maxHeight=(height>maxHeight)?height:maxHeight;});}
for(colnum=1;colnum<=settings.cols;colnum++){var eh=jQuery('#li_container'+y+' .li_cont'+colnum);var border_top=(isNaN(parseInt(eh.css('borderTopWidth'),10))?0:parseInt(eh.css('borderTopWidth'),10));var border_bottom=(isNaN(parseInt(eh.css('borderBottomWidth'),10))?0:parseInt(eh.css('borderBottomWidth'),10));mh=maxHeight-(parseInt(eh.css('paddingTop'),10)+parseInt(eh.css('paddingBottom'),10)+border_top+border_bottom);eh.height(mh);}}
jQuery('#li_container'+y).append('<br />');});}}
jQuery.fn.uncolumnlists=function(){jQuery('.li_cont1').each(function(i){var onecolSize=jQuery('#li_container'+(++i)+' .li_cont1 > li').size();if(jQuery('#li_container'+i+' .li_cont1').is('ul')){jQuery('#li_container'+i+' > ul > li').appendTo('#li_container'+i+' ul:first');for(var j=1;j<=onecolSize;j++){jQuery('#li_container'+i+' ul:first li').removeAttr('class').removeAttr('style');}
jQuery('#li_container'+i+' ul:first').removeAttr('style').removeClass('li_cont1').insertBefore('#li_container'+i);}else{jQuery('#li_container'+i+' > ol > li').appendTo('#li_container'+i+' ol:first');for(var j=1;j<=onecolSize;j++){jQuery('#li_container'+i+' ol:first li').removeAttr('class').removeAttr('style');}
jQuery('#li_container'+i+' ol:first').removeAttr('style').removeClass('li_cont1').insertBefore('#li_container'+i);}
jQuery('#li_container'+i).remove();});}
// ---------------- end UL, OL LIST COLUMNIZER
// -------------------------------------------------------------------------
// ---------------- start scroll to top of page
$(document).ready(function(){$(".toTop").hide().removeAttr("href");if($(window).scrollTop()!="0"){$(".toTop").fadeIn("slow");}
$(window).scroll(function(){if($(window).scrollTop()=="0"){$(".toTop").fadeOut("slow");}else{$(".toTop").fadeIn("slow");}});$(".toTop").click(function(){$("html, body").animate({scrollTop:105},"slow");});
// ---------------- end scroll to top of page
// -------------------------------------------------------------------------
// ---------------- start favourites windows
$(".DeliciousLink").click(function(){window.open('http://del.icio.us/post?v=4&amp;noui&amp;jump=close&amp;url='+encodeURIComponent(location.href)+'&amp;title='+encodeURIComponent(document.title),'delicious','toolbar=no,width=700,height=400');return false;});
$(".DiggLink").click(function(){window.open('http://digg.com/submit?v=4&amp;noui&amp;jump=close&amp;url='+encodeURIComponent(location.href)+'&amp;title='+encodeURIComponent(document.title),'digg','toolbar=no,width=800,height=600');return false;});
$(".FBLink").click(function(){window.open('http://www.facebook.com/sharer.php?u='+encodeURIComponent(location.href)+'&amp;t='+encodeURIComponent(document.title),'facebook','toolbar=no,width=800,height=500');return false;});
$(".TwitterLink").click(function(){window.open('http://twitter.com/home?status='+encodeURIComponent(location.href)+'&amp;t='+encodeURIComponent(document.title),'twitter','toolbar=no,width=800,height=500');return false;});
$(".GoogleLink").click(function(){window.open('http://www.google.com/bookmarks/mark?op=add&bkmk='+encodeURIComponent(location.href)+'&amp;t='+encodeURIComponent(document.title),'google','toolbar=no,width=800,height=500');return false;});});
// ---------------- end favourites windows
// -------------------------------------------------------------------------
// ---------------- start ratings widgets
function RateIt(id, folder, topic, averageRating, contentid) {
	jQuery.getJSON('/scripts/poll/rateit.aspx?folder='+folder+'&topic='+topic+'&contentid='+contentid+'&choiceid='+id, function(data){
		if(!data.error) { 
			jQuery('#foodRatingList_' + contentid).attr('class', jQuery('#rateit_' + contentid + ' a[choicevalue='+Round(data.data.averagerating)+']').attr('class'));
			jQuery('#starTitle_' + contentid).html(data.message);
			
			jQuery("#rateit_" + contentid + ".pg_rate_stars li a").unbind('mouseleave').unbind('mouseenter').unbind('click');

		}
		else {
			jQuery('#foodRatingList_' + contentid).attr('class', jQuery('#rateit_' + contentid + ' a[choicevalue='+Round(averageRating)+']').attr('class'));
			jQuery("#rateit_" + contentid + ".pg_rate_stars li a").unbind('mouseleave').unbind('mouseenter').unbind('click');
		}
	});
}
function Round(value) {
	return Math.round(value);
}
function SetEvents(contentid, averageRating) {
	jQuery('#rateit_' + contentid + '.pg_rate_stars li a').unbind('mouseenter mouseleave');

	// set event handlers							
	jQuery("#rateit_" + contentid+ ".pg_rate_stars li a").hover(
		function () {	
			classname = jQuery(this).attr('class'); 
			currentClass = jQuery('#rateit_' + contentid + ' a[choicevalue='+Round(averageRating)+']').attr('class'); 
			jQuery('#foodRatingList_' + contentid).removeClass(currentClass); 
			jQuery('#foodRatingList_' + contentid).addClass(classname); 
		}, 
		function () { 
			jQuery('#foodRatingList_' + contentid).removeClass(classname); 
			jQuery('#foodRatingList_' + contentid).addClass(currentClass);
		}); 
}
// ---------------- end ratings widgets
// -------------------------------------------------------------------------
// ---------------- start ontv schedule
;(function($){function showInfo(e,schedule,el){e.preventDefault();$("#showinfocontainer").hide();var infoUrl="/OnTV/scheduleShowInfo.xml?t="+schedule.settings.timezone+"&"+$(el).find(".MoreInfo").attr("rel")+"&showname="+$(el).find(".ScheduleShowTitle").html();pageTracker._trackEvent('Schedule', 'Grid', $(el).find(".ScheduleShowTitle").html());$("#showinfobox").empty().html('<div id="showInfo"><h3 class="ScheduleShowTitle  ContentTitle-M"><a href="#">'+$(el).find(".ScheduleShowTitle").html()+'</a></h3><div class="showinfoloading ScheduleShowInfo"><img src="/Media/Images/Icons/Global/Icon_Loader_Lg.gif" alt="Loading" /></div>');if(typeof showRequest!=='undefined'){showRequest.abort();}
showRequest=$.ajax({dataType:"html",cache:false,url:infoUrl,success:function(html){$("#showinfobox").html(html);delete showRequest;}});var elPos=new Object();elPos.l=$(el).offset().left-$(schedule).offset().left;elPos.r=$(el).offset().left-$(schedule).offset().left+schedule.settings.baseWidth;elPos.t=$(el).offset().top-$(schedule).offset().top-10;elPos.b=$(el).offset().top-$(schedule).offset().top+$(el).height()+8;var pos=new Object();$(".showpointer").empty();$(".showpointer").html("<div></div>");var pTB='';var pLR='';if(elPos.r<$(schedule).width()-schedule.settings.infoWidth){pos.l=elPos.r+'px';pLR="left";}else{pos.l=elPos.l-schedule.settings.infoWidth-20+'px';pLR="right";}
if(elPos.t<$(schedule).height()/2){pos.t=elPos.t+'px';pos.b='';pTB="top";}else{pos.t='';pos.b=$(schedule).height()-elPos.t-schedule.settings.baseHeight+'px';pTB="bottom";}
$(".showpointer div").addClass("showpointer"+pLR+pTB);$("#showinfocontainer").css({'left':pos.l,'top':pos.t,'bottom':pos.b});$("#showinfocontainer").fadeIn(300);}
var defaults={visibleX:7,visibleY:10,maxX:14,maxY:48,startX:6,startY:40,baseWidth:120,baseHeight:90,transitionTime:1000,timezone:0,infoWidth:300};$.fn.tvschedule=function(scheduleContainer,settings){$.extend(this,{move:function(x,y,t){if(x!=this.currXPos&&y==this.currYPos){if(x<0){x=0;}else if(x>(this.settings.maxX-this.settings.visibleX)){x=this.settings.maxX-this.settings.visibleX;}
$(".ScheduleDaysContent").css({left:-x*this.settings.baseWidth});$(".ScheduleShowsContent").css({left:-x*this.settings.baseWidth});}else if(y!=this.currYPos&&x==this.currXPos){if(y<0){y=0;}else if(y>(this.settings.maxY-this.settings.visibleY)){y=this.settings.maxY-this.settings.visibleY;}
$(".ScheduleTimesContent").css({top:-y*this.settings.baseHeight});$(".ScheduleShowsContent").css({top:-y*this.settings.baseHeight});}else if(x!=this.currXPos&&y!=this.currYPos){if(x<0){x=0;}else if(x>(this.settings.maxX-this.settings.visibleX)){x=this.settings.maxX-this.settings.visibleX;}
if(y<0){y=0;}else if(y>(this.settings.maxY-this.settings.visibleY)){y=this.settings.maxY-this.settings.visibleY;}
$(".ScheduleDaysContent").css({left:-x*this.settings.baseWidth});$(".ScheduleTimesContent").css({top:-y*this.settings.baseHeight});$(".ScheduleShowsContent").css({top:-y*this.settings.baseHeight,left:-x*this.settings.baseWidth});}
this.currXPos=x;this.currYPos=y;return this;},updateHighlight:function(n){$(".ScheduleDaysContent .selected").toggleClass("selected");$(".ScheduleShowsContent .selected").toggleClass("selected");$(".ScheduleDay:eq("+n+")").toggleClass("selected");$(".ScheduleShowsDay:eq("+n+")").toggleClass("selected");}});this.settings=$.extend({},defaults,settings);this.scheduleContainer=$(scheduleContainer);this.currXPos=0;this.currYPos=0;this.move(this.settings.startX,this.settings.startY,0);var schedule=this;this.append('<div id="showinfocontainer"><div class="showpointer"></div><div id="showinfobox"><div id="showInfo"><h3 class="ScheduleShowTitle ContentTitle-M"></h3></div></div><div class="showinfoclose"></div></div>');$("#showinfocontainer").hide();$(this).find(".ScheduleShow").click(function(e){showInfo(e,schedule,this);});$(this).find(".showinfoclose").click(function(e){$("#showinfocontainer").fadeOut(200);if(typeof request!=='undefined'){showRequest.abort();}});$(this).find(".ScheduleControls a").click(function(e){e.preventDefault();});$(this).find(".ScheduleControls .left").click(function(){schedule.move((schedule.currXPos-1),schedule.currYPos,schedule.settings.transitionTime);pageTracker._trackEvent('Schedule', 'Grid Controls', 'Left-Previous');});$(this).find(".ScheduleControls .right").click(function(){schedule.move((schedule.currXPos+1),schedule.currYPos,schedule.settings.transitionTime);pageTracker._trackEvent('Schedule', 'Grid Controls', 'Right-Next');});$(this).find(".ScheduleControls .up").click(function(){schedule.move(schedule.currXPos,(schedule.currYPos-1),schedule.settings.transitionTime);pageTracker._trackEvent('Schedule', 'Grid Controls', 'Up-Earlier');});$(this).find(".ScheduleControls .down").click(function(){schedule.move(schedule.currXPos,(schedule.currYPos+1),schedule.settings.transitionTime);pageTracker._trackEvent('Schedule', 'Grid Controls', 'Down-Later');});return this;};})(jQuery);
// ---------------- end ontv schedule
// -------------------------------------------------------------------------
// ---------------- start fancybox for galleries
;(function($){$.fn.fixPNG=function(){return this.each(function(){var image=$(this).css('backgroundImage');if(image.match(/^url\(["']?(.*\.png)["']?\)$/i)){image=RegExp.$1;$(this).css({'backgroundImage':'none','filter':"progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled=true, sizingMethod="+($(this).css('backgroundRepeat')=='no-repeat'?'crop':'scale')+", src='"+image+"')"}).each(function(){var position=$(this).css('position');if(position!='absolute'&&position!='relative')
$(this).css('position','relative');});}});};var elem,opts,busy=false,imagePreloader=new Image,loadingTimer,loadingFrame=1,imageRegExp=/\.(jpg|gif|png|bmp|jpeg)(.*)?$/i;var isIE=($.browser.msie&&parseInt($.browser.version.substr(0,1))<8);$.fn.fancybox=function(settings){settings=$.extend({},$.fn.fancybox.defaults,settings);var matchedGroup=this;function _initialize(){elem=this;opts=settings;_start();return false;};function _start(){if(busy)return;if($.isFunction(opts.callbackOnStart)){opts.callbackOnStart();}
opts.itemArray=[];opts.itemCurrent=0;if(settings.itemArray.length>0){opts.itemArray=settings.itemArray;}else{var item={};if(!elem.rel||elem.rel==''){var item={href:elem.href,title:elem.title};if($(elem).children("img:first").length){item.orig=$(elem).children("img:first");}
opts.itemArray.push(item);}else{var subGroup=$(matchedGroup).filter("a[rel="+elem.rel+"]");var item={};for(var i=0;i<subGroup.length;i++){item={href:subGroup[i].href,title:subGroup[i].title};if($(subGroup[i]).children("img:first").length){item.orig=$(subGroup[i]).children("img:first");}
opts.itemArray.push(item);}
while(opts.itemArray[opts.itemCurrent].href!=elem.href){opts.itemCurrent++;}}}
if(opts.overlayShow){if(isIE){$('embed, object, select').css('visibility','hidden');}
$("#fancy_overlay").css('opacity',opts.overlayOpacity).show();}
_change_item();};function _change_item(){$("#fancy_right, #fancy_left, #fancy_close, #fancy_title").hide();var href=opts.itemArray[opts.itemCurrent].href;if(href.match("iframe")||elem.className.indexOf("iframe")>=0){_set_content('<iframe id="fancy_frame" onload="$.fn.fancybox.showIframe()" name="fancy_iframe'+Math.round(Math.random()*1000)+'" frameborder="0" hspace="0" scrolling="'+opts.iframeScrolling+'" src="'+href+'"></iframe>',opts.frameWidth,opts.frameHeight);}else if(href.match(/#/)){var target=window.location.href.split('#')[0];target=href.replace(target,'');target=target.substr(target.indexOf('#'));_set_content('<div id="fancy_div">'+$(target).html()+'</div>',opts.frameWidth,opts.frameHeight);}else if(href.match(imageRegExp)){imagePreloader=new Image;imagePreloader.src=href;if(imagePreloader.complete){_proceed_image();}else{$.fn.fancybox.showLoading();$(imagePreloader).unbind().bind('load',function(){$(".fancy_loading").hide();_proceed_image();});}}else{$.get(href,function(data){_set_content('<div id="fancy_ajax">'+data+'</div>',opts.frameWidth,opts.frameHeight);});}};function _proceed_image(){if(opts.imageScale){var w=$.fn.fancybox.getViewport();var r=Math.min(Math.min(w[0]-36,imagePreloader.width)/imagePreloader.width,Math.min(w[1]-60,imagePreloader.height)/imagePreloader.height);var width=Math.round(r*imagePreloader.width);var height=Math.round(r*imagePreloader.height);}else{var width=imagePreloader.width;var height=imagePreloader.height;}
_set_content('<img alt="" id="fancy_img" src="'+imagePreloader.src+'" />',width,height);};function _preload_neighbor_images(){if((opts.itemArray.length-1)>opts.itemCurrent){var href=opts.itemArray[opts.itemCurrent+1].href;if(href.match(imageRegExp)){objNext=new Image();objNext.src=href;}}
if(opts.itemCurrent>0){var href=opts.itemArray[opts.itemCurrent-1].href;if(href.match(imageRegExp)){objNext=new Image();objNext.src=href;}}};function _set_content(value,width,height){busy=true;var pad=opts.padding;if(isIE){$("#fancy_content")[0].style.removeExpression("height");$("#fancy_content")[0].style.removeExpression("width");}
if(pad>0){width+=pad*2;height+=pad*2;$("#fancy_content").css({'top':pad+'px','right':pad+'px','bottom':pad+'px','left':pad+'px','width':'auto','height':'auto'});if(isIE){$("#fancy_content")[0].style.setExpression('height','(this.parentNode.clientHeight - 20)');$("#fancy_content")[0].style.setExpression('width','(this.parentNode.clientWidth - 20)');}}else{$("#fancy_content").css({'top':0,'right':0,'bottom':0,'left':0,'width':'100%','height':'100%'});}
if($("#fancy_outer").is(":visible")&&width==$("#fancy_outer").width()&&height==$("#fancy_outer").height()){$("#fancy_content").fadeOut("fast",function(){$("#fancy_content").empty().append($(value)).fadeIn("normal",function(){_finish();});});return;}
var w=$.fn.fancybox.getViewport();var itemLeft=(width+36)>w[0]?w[2]:(w[2]+Math.round((w[0]-width-36)/2));var itemTop=(height+50)>w[1]?w[3]:(w[3]+Math.round((w[1]-height-50)/2));var itemOpts={'left':itemLeft,'top':itemTop,'width':width+'px','height':height+'px'};if($("#fancy_outer").is(":visible")){$("#fancy_content").fadeOut("normal",function(){$("#fancy_content").empty();$("#fancy_outer").animate(itemOpts,opts.zoomSpeedChange,opts.easingChange,function(){$("#fancy_content").append($(value)).fadeIn("normal",function(){_finish();});});});}else{if(opts.zoomSpeedIn>0&&opts.itemArray[opts.itemCurrent].orig!==undefined){$("#fancy_content").empty().append($(value));var orig_item=opts.itemArray[opts.itemCurrent].orig;var orig_pos=$.fn.fancybox.getPosition(orig_item);$("#fancy_outer").css({'left':(orig_pos.left-18)+'px','top':(orig_pos.top-18)+'px','width':$(orig_item).width(),'height':$(orig_item).height()});if(opts.zoomOpacity){itemOpts.opacity='show';}
$("#fancy_outer").animate(itemOpts,opts.zoomSpeedIn,opts.easingIn,function(){_finish();});}else{$("#fancy_content").hide().empty().append($(value)).show();$("#fancy_outer").css(itemOpts).fadeIn("normal",function(){_finish();});}}};function _set_navigation(){if(opts.itemCurrent!=0){$("#fancy_left, #fancy_left_ico").unbind().bind("click",function(e){e.stopPropagation();opts.itemCurrent--;_change_item();return false;});$("#fancy_left").show();}
if(opts.itemCurrent!=(opts.itemArray.length-1)){$("#fancy_right, #fancy_right_ico").unbind().bind("click",function(e){e.stopPropagation();opts.itemCurrent++;_change_item();return false;});$("#fancy_right").show();}};function _finish(){_set_navigation();_preload_neighbor_images();$(document).keydown(function(e){if(e.keyCode==27){$.fn.fancybox.close();$(document).unbind("keydown");}else if(e.keyCode==37&&opts.itemCurrent!=0){opts.itemCurrent--;_change_item();$(document).unbind("keydown");}else if(e.keyCode==39&&opts.itemCurrent!=(opts.itemArray.length-1)){opts.itemCurrent++;_change_item();$(document).unbind("keydown");}});if(opts.centerOnScroll){$(window).bind("resize scroll",$.fn.fancybox.scrollBox);}else{$("div#fancy_outer").css("position","absolute");}
if(opts.hideOnContentClick){$("#fancy_wrap").click($.fn.fancybox.close);}
$("#fancy_overlay, #fancy_close").bind("click",$.fn.fancybox.close);$("#fancy_close").show();if(opts.itemArray[opts.itemCurrent].title!==undefined&&opts.itemArray[opts.itemCurrent].title.length>0){$('#fancy_title div').html(opts.itemArray[opts.itemCurrent].title);$('#fancy_title').show();}
if(opts.overlayShow&&isIE){$('embed, object, select',$('#fancy_content')).css('visibility','visible');}
if($.isFunction(opts.callbackOnShow)){opts.callbackOnShow();}
busy=false;};return this.unbind('click').click(_initialize);};$.fn.fancybox.scrollBox=function(){var pos=$.fn.fancybox.getViewport();$("#fancy_outer").css('left',(($("#fancy_outer").width()+36)>pos[0]?pos[2]:pos[2]+Math.round((pos[0]-$("#fancy_outer").width()-36)/2)));$("#fancy_outer").css('top',(($("#fancy_outer").height()+50)>pos[1]?pos[3]:pos[3]+Math.round((pos[1]-$("#fancy_outer").height()-50)/2)));};$.fn.fancybox.getNumeric=function(el,prop){return parseInt($.curCSS(el.jquery?el[0]:el,prop,true))||0;};$.fn.fancybox.getPosition=function(el){var pos=el.offset();pos.top+=$.fn.fancybox.getNumeric(el,'paddingTop');pos.top+=$.fn.fancybox.getNumeric(el,'borderTopWidth');pos.left+=$.fn.fancybox.getNumeric(el,'paddingLeft');pos.left+=$.fn.fancybox.getNumeric(el,'borderLeftWidth');return pos;};$.fn.fancybox.showIframe=function(){$(".fancy_loading").hide();$("#fancy_frame").show();};$.fn.fancybox.getViewport=function(){return[$(window).width(),$(window).height(),$(document).scrollLeft(),$(document).scrollTop()];};$.fn.fancybox.animateLoading=function(){if(!$("#fancy_loading").is(':visible')){clearInterval(loadingTimer);return;}
$("#fancy_loading > div").css('top',(loadingFrame*-40)+'px');loadingFrame=(loadingFrame+1)%12;};$.fn.fancybox.showLoading=function(){clearInterval(loadingTimer);var pos=$.fn.fancybox.getViewport();$("#fancy_loading").css({'left':((pos[0]-40)/2+pos[2]),'top':((pos[1]-40)/2+pos[3])}).show();$("#fancy_loading").bind('click',$.fn.fancybox.close);loadingTimer=setInterval($.fn.fancybox.animateLoading,66);};$.fn.fancybox.close=function(){busy=true;$(imagePreloader).unbind();$("#fancy_overlay, #fancy_close").unbind();if(opts.hideOnContentClick){$("#fancy_wrap").unbind();}
$("#fancy_close, .fancy_loading, #fancy_left, #fancy_right, #fancy_title").hide();if(opts.centerOnScroll){$(window).unbind("resize scroll");}
__cleanup=function(){$("#fancy_overlay, #fancy_outer").hide();if(opts.centerOnScroll){$(window).unbind("resize scroll");}
if(isIE){$('embed, object, select').css('visibility','visible');}
if($.isFunction(opts.callbackOnClose)){opts.callbackOnClose();}
busy=false;};if($("#fancy_outer").is(":visible")!==false){if(opts.zoomSpeedOut>0&&opts.itemArray[opts.itemCurrent].orig!==undefined){var orig_item=opts.itemArray[opts.itemCurrent].orig;var orig_pos=$.fn.fancybox.getPosition(orig_item);var itemOpts={'left':(orig_pos.left-18)+'px','top':(orig_pos.top-18)+'px','width':$(orig_item).width(),'height':$(orig_item).height()};if(opts.zoomOpacity){itemOpts.opacity='hide';}
$("#fancy_outer").stop(false,true).animate(itemOpts,opts.zoomSpeedOut,opts.easingOut,__cleanup);}else{$("#fancy_outer").stop(false,true).fadeOut("fast",__cleanup);}}else{__cleanup();}
return false;};$.fn.fancybox.build=function(){var html='';html+='<div id="fancy_overlay"></div>';html+='<div id="fancy_wrap">';html+='<div class="fancy_loading" id="fancy_loading"><div></div></div>';html+='<div id="fancy_outer">';html+='<div id="fancy_inner">';html+='<div id="fancy_close"></div>';html+='<div id="fancy_bg"></div>';html+='<div id="fancy_content"></div>';html+='</div>';html+='</div>';html+='</div>';$(html).appendTo("body");if(isIE){$("#fancy_inner").prepend('<iframe class="fancy_bigIframe" scrolling="no" frameborder="0"></iframe>');$("#fancy_close, .fancy_bg, .fancy_title, .fancy_ico").fixPNG();}};$.fn.fancybox.defaults={padding:10,imageScale:true,zoomOpacity:false,zoomSpeedIn:0,zoomSpeedOut:0,zoomSpeedChange:300,easingIn:'swing',easingOut:'swing',easingChange:'swing',frameWidth:425,frameHeight:355,overlayShow:true,overlayOpacity:0.3,hideOnContentClick:true,centerOnScroll:true,itemArray:[],callbackOnStart:null,callbackOnShow:null,callbackOnClose:null};$(document).ready(function(){$.fn.fancybox.build();});})(jQuery);
// ---------------- end fancybox for galleries
// -------------------------------------------------------------------------
// ---------------- start json cookie
(function(jQuery){JSONCookie={Data:{},Debug:function(cookieName){var regex=/\+/g;var val=unescape(String(parseValues(cookieName)).replace(regex," "));alert("Name: "+cookieName+"\n"+"Options: "+unescape(JSON.stringify(JSONCookie.Data[cookieName].Options))+"\n"+
val);},Delete:function(cookieName){delete JSONCookie.Data[cookieName];var expires=new Date();expires.setTime(expires.getTime()-24*60*60*1000);document.cookie=(cookieName+"=; expires="+expires.toGMTString()+"; path=/");},Init:function(cookieName,options){if(typeof JSONCookie.Data[cookieName]=="undefined"){var cookieValues={};if(typeof options!=='object'||options===null)
{options={};options.daysToLive=-1;}
var cookieOptions=getOptions(options);var v=parseValues(cookieName);if(v!==null){cookieValues=JSON.parse(unescape(String(v).replace(/\+/g," ")));}
JSONCookie.Data[cookieName]={Options:cookieOptions,Values:cookieValues};save(cookieName);}},AddValue:function(cookieName,key,value,maxValues,uniqId){if((typeof maxValues!=='number'||maxValues===1)&&(typeof value!=='object'&&value!==null))
{JSONCookie.Data[cookieName].Values[key]=value;}else{if(typeof JSONCookie.Data[cookieName].Values[key]=='undefined')
JSONCookie.Data[cookieName].Values[key]=new Array();JSONCookie.Data[cookieName].Values[key]=addCollection(JSONCookie.Data[cookieName].Values[key],value,maxValues,uniqId);}
save(cookieName);},RemoveValue:function(cookieName,key){delete JSONCookie.Data[cookieName].Values[key];save(cookieName);},GetValue:function(cookieName,key){return JSONCookie.Data[cookieName].Values[key];}}
var defaultOptions={daysToLive:null,path:'/',domain:null,secure:false};function addCollection(collection,value,maxNumber,uniqId)
{var exists=false;for(i=0;i<collection.length;i++)
{if(typeof value!=='object'){if(collection[i]==value)
exists=true;}
else if(collection[i][uniqId]==value[uniqId])
exists=true;}
if(!exists)
collection.unshift(value);return collection.slice(0,maxNumber);}
function getOptions(options)
{var optVal={};if(typeof options!=='object'||options===null)
{optVal=defaultOptions;}
else
{optVal={daysToLive:(typeof options.daysToLive==='number'&&options.daysToLive!==0?options.daysToLive:defaultOptions.daysToLive),path:(typeof options.path==='string'&&options.path!==''?options.path:defaultOptions.path),domain:(typeof options.domain==='string'&&options.domain!==''?options.domain:defaultOptions.domain),secure:(typeof options.secure==='boolean'&&options.secure?options.secure:defaultOptions.secure)};}
return optVal;}
function getOptionString(options)
{options=getOptions(options);return((typeof options.daysToLive==='number'?'; expires='+expiresGMTString(options.daysToLive):'')+'; path='+options.path+
(typeof options.domain==='string'?'; domain='+options.domain:'')+
(options.secure===true?'; secure':''));}
function expiresGMTString(daysToLive)
{var dateObject=new Date();dateObject.setTime(dateObject.getTime()+(daysToLive*24*60*60*1000));return dateObject.toGMTString();}
function parseValues(cookieName){var contents=document.cookie.split(';');cookieName+="=";var v=null;for(var i=0;i<contents.length;i++){var s=contents[i];while(s.charAt(0)==" "){s=s.substring(1,s.length);}
if(s.indexOf(cookieName)==0){v=s.substring(cookieName.length,s.length);break;}}
return v;}
function save(cookieName){document.cookie=(cookieName+"="+
escape(JSON.stringify(JSONCookie.Data[cookieName].Values))+
getOptionString(JSONCookie.Data[cookieName].Options));}})(jQuery);
// ---------------- end json cookie
// -------------------------------------------------------------------------
// ---------------- start styled scrollbars
(function($){$.jScrollPane={active:[]};$.fn.jScrollPane=function(settings)
{settings=$.extend({},$.fn.jScrollPane.defaults,settings);var rf=function(){return false;};return this.each(function()
{var $this=$(this);$this.css('overflow','hidden');var paneEle=this;if($(this).parent().is('.ScrollContainer')){var currentScrollPosition=settings.maintainPosition?$this.position().top:0;var $c=$(this).parent();var paneWidth=$c.innerWidth();var paneHeight=$c.outerHeight();var trackHeight=paneHeight;$('>.ScrollTrack, >.ScrollArrowUp, >.ScrollArrowDown',$c).remove();$this.css({'top':0});}else{var currentScrollPosition=0;this.originalPadding=$this.css('paddingTop')+' '+$this.css('paddingRight')+' '+$this.css('paddingBottom')+' '+$this.css('paddingLeft');this.originalSidePaddingTotal=(parseInt($this.css('paddingLeft'))||0)+(parseInt($this.css('paddingRight'))||0);var paneWidth=$this.innerWidth();var paneHeight=$this.innerHeight();var trackHeight=paneHeight;$(document).bind('emchange',function(e,cur,prev)
{$this.jScrollPane(settings);});}
if(settings.reinitialiseOnImageLoad){var $imagesToLoad=$.data(paneEle,'jScrollPaneImagesToLoad')||$('img',$this);var loadedImages=[];if($imagesToLoad.length){$imagesToLoad.each(function(i,val){$(this).bind('load',function(){if($.inArray(i,loadedImages)==-1){loadedImages.push(val);$imagesToLoad=$.grep($imagesToLoad,function(n,i){return n!=val;});$.data(paneEle,'jScrollPaneImagesToLoad',$imagesToLoad);settings.reinitialiseOnImageLoad=false;$this.jScrollPane(settings);}}).each(function(i,val){if(this.complete||this.complete===undefined){this.src=this.src;}});});};}
var p=this.originalSidePaddingTotal;var cssToApply={'height':'auto','width':paneWidth-settings.scrollbarWidth-settings.scrollbarMargin-p+'px'}
if(settings.scrollbarOnLeft){cssToApply.paddingLeft=settings.scrollbarMargin+settings.scrollbarWidth+'px';}else{cssToApply.paddingRight=settings.scrollbarMargin+'px';}
$this.css(cssToApply);var contentHeight=$this.outerHeight();var percentInView=paneHeight/contentHeight;if(percentInView<.99){var $container=$this.parent();$container.append($('<div></div>').attr({'className':'ScrollTrack'}).append($('<div></div>').attr({'className':'ScrollDrag'}).append($('<div></div>').attr({'className':'ScrollDragTop'}),$('<div></div>').attr({'className':'ScrollDragBottom'}))));var $track=$('>.ScrollTrack',$container);var $drag=$('>.ScrollTrack .ScrollDrag',$container);if(settings.showArrows){var currentArrowButton;var currentArrowDirection;var currentArrowInterval;var currentArrowInc;var whileArrowButtonDown=function()
{if(currentArrowInc>4||currentArrowInc%4==0){positionDrag(dragPosition+currentArrowDirection*mouseWheelMultiplier);}
currentArrowInc++;};var onArrowMouseUp=function(event)
{$('html').unbind('mouseup',onArrowMouseUp);currentArrowButton.removeClass('ScrollActiveArrow');clearInterval(currentArrowInterval);};var onArrowMouseDown=function(){$('html').bind('mouseup',onArrowMouseUp);currentArrowButton.addClass('ScrollActiveArrow');currentArrowInc=0;whileArrowButtonDown();currentArrowInterval=setInterval(whileArrowButtonDown,100);};$container.append($('<a></a>').attr({'href':'#','className':'ScrollArrowUp'}).html('Scroll up').bind('mousedown',function()
{currentArrowButton=$(this);currentArrowDirection=-1;onArrowMouseDown();this.blur();return false;}).bind('click',rf),$('<a></a>').attr({'href':'#','className':'ScrollArrowDown'}).html('Scroll down').bind('mousedown',function()
{currentArrowButton=$(this);currentArrowDirection=1;onArrowMouseDown();this.blur();return false;}).bind('click',rf));var $upArrow=$('>.ScrollArrowUp',$container);var $downArrow=$('>.ScrollArrowDown',$container);if(settings.arrowSize){trackHeight=paneHeight-settings.arrowSize-settings.arrowSize;$track.css({'height':trackHeight+'px',top:settings.arrowSize+'px'})}else{var topArrowHeight=$upArrow.height();settings.arrowSize=topArrowHeight;trackHeight=paneHeight-topArrowHeight-$downArrow.height();$track.css({'height':trackHeight+'px',top:topArrowHeight+'px'})}}
var $pane=$(this).css({'overflow':'visible'});var currentOffset;var maxY;var mouseWheelMultiplier;var dragPosition=0;var dragMiddle=percentInView*paneHeight/2;var getPos=function(event,c){var p=c=='X'?'Left':'Top';return event['page'+c]||(event['client'+c]+(document.documentElement['scroll'+p]||document.body['scroll'+p]))||0;};var ignoreNativeDrag=function(){return false;};var initDrag=function()
{ceaseAnimation();currentOffset=$drag.offset(false);currentOffset.top-=dragPosition;maxY=trackHeight-$drag[0].offsetHeight;mouseWheelMultiplier=2*settings.wheelSpeed*maxY/contentHeight;};var onStartDrag=function(event)
{initDrag();dragMiddle=getPos(event,'Y')-dragPosition-currentOffset.top;$('html').bind('mouseup',onStopDrag).bind('mousemove',updateScroll);if($.browser.msie){$('html').bind('dragstart',ignoreNativeDrag).bind('selectstart',ignoreNativeDrag);}
return false;};var onStopDrag=function()
{$('html').unbind('mouseup',onStopDrag).unbind('mousemove',updateScroll);dragMiddle=percentInView*paneHeight/2;if($.browser.msie){$('html').unbind('dragstart',ignoreNativeDrag).unbind('selectstart',ignoreNativeDrag);}};var positionDrag=function(destY)
{destY=destY<0?0:(destY>maxY?maxY:destY);dragPosition=destY;$drag.css({'top':destY+'px'});var p=destY/maxY;$pane.css({'top':((paneHeight-contentHeight)*p)+'px'});$this.trigger('scroll');if(settings.showArrows){$upArrow[destY==0?'addClass':'removeClass']('disabled');$downArrow[destY==maxY?'addClass':'removeClass']('disabled');}};var updateScroll=function(e)
{positionDrag(getPos(e,'Y')-currentOffset.top-dragMiddle);};var dragH=Math.max(Math.min(percentInView*(paneHeight-settings.arrowSize*2),settings.dragMaxHeight),settings.dragMinHeight);$drag.css({'height':dragH+'px'}).bind('mousedown',onStartDrag);var trackScrollInterval;var trackScrollInc;var trackScrollMousePos;var doTrackScroll=function()
{if(trackScrollInc>8||trackScrollInc%4==0){positionDrag((dragPosition-((dragPosition-trackScrollMousePos)/2)));}
trackScrollInc++;};var onStopTrackClick=function()
{clearInterval(trackScrollInterval);$('html').unbind('mouseup',onStopTrackClick).unbind('mousemove',onTrackMouseMove);};var onTrackMouseMove=function(event)
{trackScrollMousePos=getPos(event,'Y')-currentOffset.top-dragMiddle;};var onTrackClick=function(event)
{initDrag();onTrackMouseMove(event);trackScrollInc=0;$('html').bind('mouseup',onStopTrackClick).bind('mousemove',onTrackMouseMove);trackScrollInterval=setInterval(doTrackScroll,100);doTrackScroll();};$track.bind('mousedown',onTrackClick);$container.bind('mousewheel',function(event,delta){initDrag();ceaseAnimation();var d=dragPosition;positionDrag(dragPosition-delta*mouseWheelMultiplier);var dragOccured=d!=dragPosition;return!dragOccured;});var _animateToPosition;var _animateToInterval;function animateToPosition()
{var diff=(_animateToPosition-dragPosition)/settings.animateStep;if(diff>1||diff<-1){positionDrag(dragPosition+diff);}else{positionDrag(_animateToPosition);ceaseAnimation();}}
var ceaseAnimation=function()
{if(_animateToInterval){clearInterval(_animateToInterval);delete _animateToPosition;}};var scrollTo=function(pos,preventAni)
{if(typeof pos=="string"){$e=$(pos,$this);if(!$e.length)return;pos=$e.offset().top-$this.offset().top;}
$container.scrollTop(0);ceaseAnimation();var destDragPosition=-pos/(paneHeight-contentHeight)*maxY;if(preventAni||!settings.animateTo){positionDrag(destDragPosition);}else{_animateToPosition=destDragPosition;_animateToInterval=setInterval(animateToPosition,settings.animateInterval);}};$this[0].scrollTo=scrollTo;$this[0].scrollBy=function(delta)
{var currentPos=-parseInt($pane.css('top'))||0;scrollTo(currentPos+delta);};initDrag();scrollTo(-currentScrollPosition,true);$('*',this).bind('focus',function(event)
{var $e=$(this);var eleTop=0;while($e[0]!=$this[0]){eleTop+=$e.position().top;$e=$e.offsetParent();}
var viewportTop=-parseInt($pane.css('top'))||0;var maxVisibleEleTop=viewportTop+paneHeight;var eleInView=eleTop>viewportTop&&eleTop<maxVisibleEleTop;if(!eleInView){var destPos=eleTop-settings.scrollbarMargin;if(eleTop>viewportTop){destPos+=$(this).height()+15+settings.scrollbarMargin-paneHeight;}
scrollTo(destPos);}})
if(location.hash){scrollTo(location.hash);}
$(document).bind('click',function(e)
{$target=$(e.target);if($target.is('a')){var h=$target.attr('href');if(h!=undefined&&h.substr(0,1)=='#'){scrollTo(h);}}});$.jScrollPane.active.push($this[0]);}else{$this.css({'height':paneHeight+'px','padding':this.originalPadding});$this.parent().unbind('mousewheel');}})};$.fn.jScrollPane.defaults={scrollbarWidth:10,scrollbarMargin:5,wheelSpeed:18,showArrows:false,arrowSize:0,animateTo:false,dragMinHeight:1,dragMaxHeight:99999,animateInterval:100,animateStep:3,maintainPosition:true,scrollbarOnLeft:false,reinitialiseOnImageLoad:false};$(window).bind('unload',function(){var els=$.jScrollPane.active;for(var i=0;i<els.length;i++){els[i].scrollTo=els[i].scrollBy=null;}});})(jQuery);
// ---------------- end styled scrollbars
