// javascript for video portal
// requires jQuery library

$(document).ready(function() {
	//set click events for playlist
	$('#playlist li a').click(function (e) {
		var vTitle = $(this).parent().attr('class');
		e.preventDefault();
		resetActiveVideo(vTitle);
		var vidsrc = $('#videoContainer object embed').attr('src');
		vidsrc += '&autoplay=1';
		$('#videoContainer object embed').attr('src',vidsrc);
	});
	$('#playlist li:first').fadeTo(1250,0.5);
	$('#videoQueue li div').attr('style','display:none');
	
	// http://docs.jquery.com/Tutorials:PNG_Opacity_Fix_for_IE6#The_Solution
	var oldBrowser = (/MSIE ((5\.5)|6)/.test(navigator.userAgent) && navigator.platform == "Win32");
	if (oldBrowser) {
		// get all pngs on page
		$('img[src$=.png]').each(function() {
			if (!this.complete) {
				this.onload = function() { fixPng(this) };
			} else {
				fixPng(this);
			}
		});
	}

});

function resetActiveVideo(vTitle) {
	$('#playlist li:first').appendTo('#playlist').fadeTo(2500,1.0);
	// clear stage
	var vHero = $('#videoContainer').html();
	$('#videoContainer').empty();
	var vText = $('#videoText').html();
	$('#videoText').empty();
	var previousVideoTitle = $('#videoContainer').attr('class');
	//console.log("to Que = " + previousVideoTitle);
	var vToQue = '<li class="' + previousVideoTitle + '">' + '<ul><li>' + vHero + '</li><li>' + vText + '</li></ul>' + '</li>'
	$('#videoQueue ol').append(vToQue);
	// set the stage
	var vNewSource = '#videoQueue ol li.' + vTitle;
	$(vNewSource + ' ul li:first div').prependTo('#videoContainer').fadeIn(2500);
	$('#videoContainer').removeClass(previousVideoTitle).addClass(vTitle);
	$(vNewSource + ' ul li:last div').prependTo('#videoText').fadeIn('slow');
	$(vNewSource).remove();
	// sort playlist
	$('#playlist li.' + vTitle).prependTo('#playlist').fadeTo(1250,0.5);
}

function fixPng(png) {
	// get src
	var src = png.src;
	// set width and height
	if (!png.style.width) { png.style.width = $(png).width(); }
	if (!png.style.height) { png.style.height = $(png).height(); }
	// replace by blank image
	png.onload = function() { };
	png.src = blank.src;
	// set filter (display original image)
	png.runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + src + "',sizingMethod='scale')";
}
