function jcarousel_callback(carousel)
{
	$('#jcarousel-next').bind('click', function() {
		carousel.next();
		return false;
	});
	
	$('#jcarousel-prev').bind('click', function() {
		carousel.prev();
		return false;
	});
}

$(function(){

	/* FILE CHANGED */
		Cufon.replace('.feature-col h3', {
			hover: true
		})('.blog-col h3', {
			hover: true
		})('.video #pageWrapper h1', {
			hover: true
		})('.share-pop h3', {
			hover: true
		})('#storeHeader h1', {
			hover: true
		})('#appearance-results > h2', {
			hover: true
		})('#program-results > h2', {
			hover: true
		})('#peopleResults > h2', {
			hover: true
		})('#committee-results > h2', {
			hover: true
		})('.search h3.sifr-h3', {		
			hover: true
		})('#contentHeader h1', {
			hover: true
		})('.video #mainContent h2', {
			hover: true
		})('.bio #mainContent h2', {
			hover: true
		})('.sifr-h2', {
			hover: true
		})('#byTheNumbers h3', {
			hover: true
		})('.store #productDetail h2', {
			hover: true
		})('#mainContent #featuredProducts h2', {
			hover: true
		})('#productGroups h2', {
			hover: true
		})('h2.store-search-title', {
			hover: true
		})('#featured h3', {
			hover: true
		})('.category #contentHeader p#resultsLabel', {
			hover: true
		})('.search #contentHeader p#resultsLabel', {
			hover: true
		})('.search #pageContent #subContent h2', {
			hover: true
		})('.blog #pageContent #mainContent h1', {
			hover: true
		})('.blog #pageContent #mainContent h2', {
			hover: true		
		})('#featuredVideo .video-content p.date', {
			hover: true
		})('.swap-cufon', {
			hover: true
		});

	/* Added VIDEO BOXES show/hide. */
	/* VIDEO BOXES */
	$("a.send-video").click(function(){
		$('form#send-video').css('display', 'block'); 
	});
	$("a.more").click(function(){
		$('form#more-options').css('display', 'block'); 
	});
//	$("a#close-send").click(function(){
//		$('form#send-video').css('display', 'none'); 
//	});
	$("a#close-options").click(function(){
		$('form#more-options').css('display', 'none'); 
	});

	/* CLIPBOARD FUNCTIONS */
	try{
		ZeroClipboard.setMoviePath( '/videoLibrary/assets/js/ZeroClipboard.swf' );
		
		var clip = new ZeroClipboard.Client();
	
		clip.setText( '' );
	
		clip.setHandCursor( true );
	
		clip.setCSSEffects( true );
	
		clip.addEventListener( 'mouseDown', function(client) {
			$("#video-width").blur();
			$("#video-height").blur();
			clip.setText($("#codeBox textarea").text());
		});
		
		clip.addEventListener( 'complete', function(client, text) {
			$("#copiedBox").addClass("copied");
		});
		
		clip.glue("codeBox");
	}catch(e){}
	
	/* LIGHT BOX */
	try{
		$("#photosBox a").fancybox({
			'overlayOpacity': .86
		});
	}catch(e){}
	
	/* TAGS */
	try{
		$("#tagFilterBox input").click(function(){

			

			var highlight = $(this).val();
			
			if($(this).is(":checked")){
				$("[rel="+highlight+"]").addClass(highlight);
			}else{
				$("[rel="+highlight+"]").removeClass(highlight);
			}
		}).attr("checked","");
	}catch(e){}
	
	/* TABLE SORT */
	try{
		$("#tagList").tablesorter({
			sortList: [[0,1]]
		});
	}catch(e){}		
	
	/* CAROUSEL */
	try{
		$("#jcarousel").jcarousel({
        	initCallback: jcarousel_callback,
	        buttonNextHTML: null,
	        buttonPrevHTML: null		
		});
	}catch(e){}

	/* TAB BOXES */
	$("#tabBox").tabs({
		load: function(){
			tabFunctions();
		},
		show: function() {
			$("#tabBox .tab-box .box-top div > ul").hide();
			$("#tabBox .tab-box .box-top div > ul").fadeIn(2000);
			tabFunctions();
		}
	});
	
	$("#tabBox").bind("tabsselect", function(event, ui) {
		if($("#tabBox .ui-state-processing").length > 0)
			return false;
		var spinnerText = $(ui.tab).text();
		$("#tabBox").tabs('option', 'spinner', spinnerText );
	});
		
	/* SEARCH */
	$("input#keywords").focus(function(){
		$("input#keywords").addClass('focus');
	});
	
	$("input#keywords").keyup(function(){
		var term = $(this).val();
		setTimeout("quickSearch('" + term + "');", 1000);
	});

	$("input#keywords").blur(function(){
		$("#searchResults").slideUp("slow");
		$("input#keywords").removeClass('focus');
	});
	
	/* PAGER NAVIGATION */
	$(".feature-col .box-nav a").click(function(){
		if($(this).attr("class") == "prev replace")
			var page = (parseInt($('#featured-url-page').text()) - 1).toString();
		else if($(this).attr("class") == "next replace")
			var page = (parseInt($('#featured-url-page').text()) + 1).toString();
		
		var url = $(this).attr("href") + '&page=' + page;
		
		var container = $("#featureVideo");
		
		$(container).fadeOut("fast", function(){
			$.ajax({
				type: "GET",
				url: url,
				success: function(html){
					$(container).html(html);

					$(container).fadeIn("fast");
					
					$('#featured-url-page').text(page);
					
					if($('#featured-url-page').text() == "1")
						$(".feature-col .box-nav .prev").hide();
					else
						$(".feature-col .box-nav .prev").show();
					
					if($('#featured-url-page').text() == $('#featured-url-count').text())
						$(".feature-col .box-nav .next").hide();
					else
						$(".feature-col .box-nav .next").show();
					
					Cufon.replace('.feature-col h3', {
						hover: true
					});
				}	
			});		
		});		
		
		return false;
	});

	$(".blog-col .box-nav a").click(function(){
		var url = $(this).attr("href");
		var totPages = parseInt($("#blog-pages").text());	
		var toPage = parseInt($(this).attr("rel"));
		var container = $(".blog-col ul");

		if(toPage != 1)
			$("#Bprev").fadeIn("fast");
		else
			$("#Bprev").fadeOut("fast");		
		
		if(toPage + 1 > totPages)
			$("#Bnext").fadeOut("fast");
		else
			$("#Bnext").fadeIn("fast");

		$("#Bnext").attr("rel", toPage+1);
		$("#Bprev").attr("rel", toPage-1);	

		$(container).fadeOut("fast", function(){
			$.ajax({
				type: "GET",
				url: url + toPage,
				success: function(html){
					$(container).html(html);

					$(container).fadeIn("fast");
					
					Cufon.replace('.blog-col h3', {
						hover: true
					});
 				}	
			});		
		});		
		
		return false;
	});

	/* EXPAND BOXES 
		NOTE: LIs with 'float: left;' style attribute seem to break jQuery slideUp/slideDown functionality
	*/
	$("#subContent #tags h2 span").click(function(){
		if ($("#subContent #tags").hasClass("expanded"))
		{
			$("#subContent #tags").removeClass("expanded").addClass("collapsed");
			$("#subContent #tags > div").slideUp("slow");
		}
		else
		{
			$("#subContent #tags").removeClass("collapsed").addClass("expanded");		
			$("#subContent #tags > div").slideDown("slow");
		}
	});

	$("#subContent #info h2 span").click(function(){
		if ($("#subContent #info").hasClass("expanded"))
		{
			$("#subContent #info").removeClass("expanded").addClass("collapsed");
			$("#subContent #info > div").slideUp("slow");
		}
		else
		{
			$("#subContent #info").removeClass("collapsed").addClass("expanded");		
			$("#subContent #info > div").slideDown("slow");
		}
	});

	$("#subContent #who h2 span").click(function(){
		if ($("#subContent #who").hasClass("expanded"))
		{
			$("#subContent #who").removeClass("expanded").addClass("collapsed");
			$("#subContent #who > div").slideUp("slow");
		}
		else
		{
			$("#subContent #who").removeClass("collapsed").addClass("expanded");		
			$("#subContent #who > div").slideDown("slow");
		}
	});

	$("#subContent #photo_gal h2 span").click(function(){
		if ($("#subContent #photo_gal").hasClass("expanded"))
		{
			$("#subContent #photo_gal").removeClass("expanded").addClass("collapsed");
			$("#subContent #photo_gal > div").slideUp("slow");
		}
		else
		{
			$("#subContent #photo_gal").removeClass("collapsed").addClass("expanded");		
			$("#subContent #photo_gal > div").slideDown("slow");
		}
	});

	$("#subContent #rcntapp h2 span").click(function(){
		if ($("#subContent #rcntapp").hasClass("expanded"))
		{
			$("#subContent #rcntapp").removeClass("expanded").addClass("collapsed");
			$("#subContent #rcntapp > div").slideUp("slow");
		}
		else
		{
			$("#subContent #rcntapp").removeClass("collapsed").addClass("expanded");		
			$("#subContent #rcntapp > div").slideDown("slow");
		}
	});

	$("#subContent #floor_apps h2 span").click(function(){
		if ($("#subContent #floor_apps").hasClass("expanded"))
		{
			$("#subContent #floor_apps").removeClass("expanded").addClass("collapsed");
			$("#subContent #floor_apps > div").slideUp("slow");
		}
		else
		{
			$("#subContent #floor_apps").removeClass("collapsed").addClass("expanded");		
			$("#subContent #floor_apps > div").slideDown("slow");
		}
	});

	$("#subContent #featured h2 span").click(function(){
		if ($("#subContent #featured").hasClass("expanded"))
		{
			$("#subContent #featured").removeClass("expanded").addClass("collapsed");
			$("#subContent #featured > div").slideUp("slow");
		}
		else
		{
			$("#subContent #featured").removeClass("collapsed").addClass("expanded");		
			$("#subContent #featured > div").slideDown("slow");
		}
	});

	$("#subContent #words h2 span").click(function(){
		if ($("#subContent #words").hasClass("expanded"))
		{
			$("#subContent #words").removeClass("expanded").addClass("collapsed");
			$("#subContent #words > div").slideUp("slow");
		}
		else
		{
			$("#subContent #words").removeClass("collapsed").addClass("expanded");		
			$("#subContent #words > div").slideDown("slow");
		}
	});

	$("#subContent #own h2 span").click(function(){
		if ($("#subContent #own").hasClass("expanded"))
		{
			$("#subContent #own").removeClass("expanded").addClass("collapsed");
			$("#subContent #own > form > div").slideUp("slow");
		}
		else
		{
			$("#subContent #own").removeClass("collapsed").addClass("expanded");		
			$("#subContent #own > form > div").slideDown("slow");
		}
	});

	$("#mainNav #navStore").click(function(){
		var cookieDate = new Date();
		cookieDate.setTime(cookieDate.getTime() - 1);
		document.cookie = "JSESSIONID=; expires="+cookieDate.toGMTString();
		
		return true;
	});
});


function tabFunctions(){

	/* DROPDOWN FILTERS */
	$(".select span").unbind('click').click(function(){
		$(this).siblings('div').slideToggle();
	});
	
	$(".select input").unbind('focus').focus(function(){
		$(this).blur();
	});
	
	$(".per-page-select span").unbind('click').click(function(){
		$(this).siblings('div').slideToggle();
	});
	
	$(".per-page-select input").unbind('focus').focus(function(){
		$(this).blur();
	});
	
	$(".box-top form.filter .select ul li a").unbind('click').click(function(){
		
		var span = $(this).parent().parent().parent().siblings('span');
		
		var parenttab = $(this).parents('.tab-box');
		
		$(span).text($(this).text());
		
		$(this).parent().parent().parent().slideUp();
		
		$(this).parent().parent().parent().siblings('input[type=hidden]').val($(this).attr('rel'));
		
		$(parenttab).contents().find('#input-url-page').val('1');
		
		var url = $(this).attr("href") + '&page=' + $(parenttab).contents().find('#input-url-page').val() + 
						'&perpage=' + $(parenttab).contents().find('#input-url-perpage').val() + 
						'&category=' + $(parenttab).contents().find('#input-url-categories').val() + 
						'&timeframe=' + $(parenttab).contents().find('#input-url-timeframe').val();
		
		var container = $(this).parents('.select').siblings(".grid-view").children("ul");
		
		$(container).fadeOut("slow", function(){
			$.ajax({
				type: "GET",
				url: url,
				success: function(html){
					$(container).html(html);
					
					$(parenttab).contents().find(".progcount span").text($(parenttab).contents().find("#input-url-numprogs").val());
					$(container).fadeIn("slow");
					
					if($(parenttab).contents().find('#input-url-page').val() == '1')
						$(parenttab).contents().find(".pager .prev").removeClass('prev').addClass('prev-off');
					else
						$(parenttab).contents().find(".pager .prev-off").removeClass('prev-off').addClass('prev');
					
					if(parseInt($(parenttab).contents().find('#input-url-page').val(),10) >= parseInt($(parenttab).contents().find('#input-url-numpages').val(),10))
						$(parenttab).contents().find(".pager .next").removeClass('next').addClass('next-off');
					else
						$(parenttab).contents().find(".pager .next-off").removeClass('next-off').addClass('next');
				}			
			});		
		});
		
		return false;
	});
	
	$(".box-top form.filter .per-page-select ul li a").unbind('click').click(function(){
		
		var span = $(this).parent().parent().parent().siblings('span');
		
		var parenttab = $(this).parents('.tab-box');
		
		$(span).text($(this).text());
		
		$(this).parent().parent().parent().slideUp();
		var newpagecount = Math.ceil(parseInt($(parenttab).contents().find('#input-url-numpages').val()) *
									parseInt($(parenttab).contents().find('#input-url-perpage').val()) /
									parseInt($(this).attr('rel')));
		$(parenttab).contents().find('#input-url-perpage').val($(this).attr('rel'));
		$(parenttab).contents().find('#input-url-page').val('1');
		$(parenttab).contents().find('#input-url-numpages').val(newpagecount.toString());
		
		var url = $(this).attr("href") + '&page=' + $(parenttab).contents().find('#input-url-page').val() + 
						'&perpage=' + $(parenttab).contents().find('#input-url-perpage').val() + 
						'&category=' + $(parenttab).contents().find('#input-url-categories').val() + 
						'&timeframe=' + $(parenttab).contents().find('#input-url-timeframe').val();
		
		var container = $(this).parents('.action-bar').siblings(".grid-view").children("ul");
		
		$(container).fadeOut("slow", function(){
			$.ajax({
				type: "GET",
				url: url,
				success: function(html){
					$(container).html(html);
					
					$(parenttab).contents().find(".grid-view").css('height', 
						(Math.ceil(parseInt($(parenttab).contents().find('#input-url-perpage').val()) / 3) * 155).toString() + 'px');
					
					$(parenttab).contents().find(".progcount span").text($(parenttab).contents().find("#input-url-numprogs").val());
					$(container).fadeIn("slow");
					
					if($(parenttab).contents().find('#input-url-page').val() == '1')
						$(parenttab).contents().find(".pager .prev").removeClass('prev').addClass('prev-off');
					else
						$(parenttab).contents().find(".pager .prev-off").removeClass('prev-off').addClass('prev');
					
					if(parseInt($(parenttab).contents().find('#input-url-page').val(),10) >= parseInt($(parenttab).contents().find('#input-url-numpages').val(),10))
						$(parenttab).contents().find(".pager .next").removeClass('next').addClass('next-off');
					else
						$(parenttab).contents().find(".pager .next-off").removeClass('next-off').addClass('next');
				}			
			});		
		});
		
		return false;
	});
	
	/* AJAX */
	$("#tabBox .pager a").unbind('click').click(function(){
		if($(this).hasClass('prev-off') || $(this).hasClass('next-off'))
			return false;
		
		var parenttab = $(this).parents('.tab-box');
		
		if($(this).attr("class") == 'prev')
			var page = (parseInt($(parenttab).contents().find('#input-url-page').val()) - 1).toString();
		if($(this).attr("class") == 'next')
			var page = (parseInt($(parenttab).contents().find('#input-url-page').val()) + 1).toString();
		
		var url = $(this).attr("href") + '&page=' + page + 
						'&perpage=' + $(parenttab).contents().find('#input-url-perpage').val() + 
						'&category=' + $(parenttab).contents().find('#input-url-categories').val() + 
						'&timeframe=' + $(parenttab).contents().find('#input-url-timeframe').val();
		
		var container = $(this).parent().parent().siblings(".grid-view").children("ul");
		
		$(container).fadeOut("slow",function(){
			$.ajax({
				type: "GET",
				url: url,
				success: function(html){
					$(container).html(html);

					$(container).fadeIn("slow");
					
					$(parenttab).contents().find('#input-url-page').val(page);
					
					if($(parenttab).contents().find('#input-url-page').val() == '1')
						$(parenttab).contents().find(".pager .prev").removeClass('prev').addClass('prev-off');
					else
						$(parenttab).contents().find(".pager .prev-off").removeClass('prev-off').addClass('prev');
					
					if(parseInt($(parenttab).contents().find('#input-url-page').val(),10) >= parseInt($(parenttab).contents().find('#input-url-numpages').val(),10))
						$(parenttab).contents().find(".pager .next").removeClass('next').addClass('next-off');
					else
						$(parenttab).contents().find(".pager .next-off").removeClass('next-off').addClass('next');
				}			
			});		
		});
			
		return false;	
	});	

}

function quickSearch(term)
{
	if(!$("input#keywords").hasClass('focus') || $("input#keywords").val() != term)
		return false;
	if($("input#keywords").val().length < 3){
		if($("#searchResults").css("display") != "none")
		{
			$("#searchResults").slideUp("slow");
		}
		
		return false;
	}
	
	url = $("#searchResults .ajaxurl").attr("href") + "&query=" + $("input#keywords").val();
	$.ajax({
		type: "GET",
		url: url,
		success: function(html){
			$("#searchResults").html(html);
			
			if($("#searchResults").css("display") == "none")
				$("#searchResults").slideDown("slow");
			
			$("#searchResults li").unbind('click').click(function(){
				location.href = $(this).contents().find("a").attr("href");
			});
		}
	});
}

/* Expand H2 */
$(document).ready(function() {
	
	$(".collapse").click(function(){
		var $par = $(this).parent();

		$index = $par.parent().children().index($par);

		$par.parent().children("div:eq(" + ($index+1) + ")").slideToggle();
	});

});

/* AJAX in feedback boxes */
$("#siteFeedback").ready(function() {
	var container = $("#siteFeedback");
	$.ajax({
		type: "get",
		url: "/videoLibrary/ajax/ajax-feedback.php",
		success: function (html) {
			$(container).html(html);
			
			$(".siteFeedback").click(function() {
				$(this).fadeOut("slow", function() {
					var page = $(container).attr('class');

					$.ajax({
						type: "get",
						url: "/videoLibrary/ajax/ajax-feedback.php",
						data: {"page":page},			
						success: function (html) {
							$(container).html(html);
							$(container).fadeIn("slow");

							$("#siteFeedbackForm").submit(function () {
						
								var page = $("#siteFeedbackForm input[name=page]").val();
								var feedback = $("#siteFeedbackForm input[name=feedback]").val();

								$(container).fadeOut("fast");

								$.ajax({
									type: "get",
									url: "/videoLibrary/ajax/ajax-feedback.php",
									data: {"page":page, "feedback":feedback},
									success: function (html) {
										$(container).html(html);
										$(container).fadeIn("slow");
										
									}

								});

								return false;
							});

						}
					});
				});
			return false;
			});
			
		}
	});
});

