// JavaScript Document

$.noConflict();

jQuery(document).ready(function($) {
								
	var query = document.location.search;
	
	$.ajax({type: "GET",url: "video_library.xml",dataType: "xml", 

		success: function(xml) 

		{

			var categories = $(xml).find("category");
			
			var current_category = 0;
			
			categories.each(function () {
				
				var category = $("<li></li>").addClass("category");				
				var category_title = $(this).attr("title");
				
				var category_link = $("<a></a>").html(category_title).click(function() {toggleList(this);});
				category_link.appendTo(category);				
				category.appendTo("#videoMenu");
				
				var subcategory_list = $("<ul></ul>").addClass("subcategoryList");
				
				subcategory_list.appendTo(category);
				
				var subcategories = $(this).find("subcategory");
				
				var current_subcategory = 0;
				
				subcategories.each(function() {				
											
					var subcategory_title = $(this).attr("title");
					
					if(subcategories.length == 1)
					{
						var video_list = subcategory_list.removeClass("subcategoryList").addClass("videoList").addClass("videoSubList");
						
						
					} else {
						var subcategory = $("<li></li>").addClass("subcategory");	
					
						var subcategory_link = $("<a></a>").html(subcategory_title).click(function () {toggleSubList(this);});
						subcategory_link.appendTo(subcategory);					
						subcategory.appendTo(subcategory_list);
						
						var video_list = $("<ul></ul>").addClass("videoList");
						
						video_list.appendTo(subcategory);
					
					}
					
					var videos = $(this).find("video");
					
					var current_video = 0;
					
					videos.each(function() {
						
						var video_item = $("<li></li>").addClass("video");
						var info = {
							title: $(this).find("title").text(),
							source: $(this).find("source").text(),
							page_name: $(this).find("page_name").text(),
							page_url: $(this).find("page_url").text(),
							url: $(this).find("url").text(),
							width: $(this).find("width").text(),
							height: $(this).find("height").text(),
							keyword: $(this).find("keyword").text()
						}
						
						var video_link = $("<a></a>").html(info.title).click(function() {loadVideo(this,info);});						
						video_link.appendTo(video_item);						
						video_item.appendTo(video_list);
						
						// For use if a particular video needs to load
						
						if(query.indexOf(info.keyword) != -1 && info.keyword != "") 
						{
							$("#introImage").css("display","none");
							toggleList(category_link);
							if(subcategories.length != 1) toggleSubList(subcategory_link);
							loadVideo(video_link,info);	
						}
						
						current_video++;
						
						
					}); // close video function
					
					current_subcategory++;
					
				}); // close subcategory function
				
				current_category++;
				
			}); //close category function

		} //close success function

	}); //close ajax
	
	
	function toggleList(obj)
	{
		$("#videoMenu").find(".subcategoryList").not($(obj).next("ul")).slideUp("fast");
		$("#videoMenu").find(".videoSubList").not($(obj).next("ul")).slideUp("fast");
		$("#videoMenu").find(".category").children(0).not(obj).removeClass("selected");
		$(obj).next("ul").slideToggle("fast");
		$(obj).toggleClass("selected");
	}
	
	function toggleSubList(obj)
	{
		$("#videoMenu").find(".subcategory").children(0).not(obj).removeClass("selected");
		$("#videoMenu").find(".videoList").not($(obj).next("ul")).slideUp("fast");
		$(obj).next("ul").slideToggle("fast");
		$(obj).toggleClass("selected");
	}
	
	function loadVideo(video_link,info)
	{	
		// Would group this in constructVideo(), but this order works better in IE
		var flashVideo = { movie:info.url, width:info.width, height:info.height, majorversion:"6", build:"40", quality:"best", wmode:"transparent" };
		UFO.create(flashVideo, "videoPlayer");
		
		if($("#introImage").css("display") != "none")
		{
			$("#introImage").fadeOut("fast",function() {constructVideo();$("#videoArea").fadeIn("fast");});	
		} else {
			$("#videoArea").fadeOut("fast",function(){constructVideo();$("#videoArea").fadeIn("fast");});
			
		}
		
		function constructVideo()
		{
			$("#videoMenu").find(".subcategory a").removeClass("selected");			
			$("#videoMenu").find(".video a").removeClass("selected");
			$(video_link).parent().parent().prev().addClass("selected");
			$(video_link).addClass("selected");
			$("#videoPlayer").css("width",info.width);
			$("#videoPlayer").css("height",info.height);
			$("#source").html(info.source);
			$("#videoTitle").html(info.title);
			$("#videoTitle").attr("href","video_library.htm?" + info.keyword);
			if(info.page_name == "")
			{
				$("#page_text").hide();
			} else {
				$("#page_text").show();
				$("#page").html(info.page_name);
				$("#page").attr("href",info.page_url);
			}
		}
	}
	
});