//show loading bar  
function showLoading(selector){
	jQuery(selector).fadeIn(1000);
	jQuery(".grid .inhibit").show();
}

//hide loading bar  
function hideLoading(selector){ 
	jQuery(selector).fadeOut(1000);
	jQuery(".grid .inhibit").hide();
};  

function onAir(v,t) {

	jQuery('.player .tx-youtubeapi-list').replaceWith(
		'<div class="tx-youtubeapi-list"><ul><li>' +
		'<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" height="360" width="480">' +
		'<param value="http://www.youtube.com/v/' + v + '?version=3&enablejsapi=1" name="movie">' +
		'<param value="transparent" name="wmode">' +
		'<embed height="360" width="480" wmode="transparent" type="application/x-shockwave-flash" src="http://www.youtube.com/v/' + v + '?version=3&enablejsapi=1&autoplay=1">' +
		'</object>' +
		'</li></ul>' +
		'<h3>' + t + '</h3>' +
		'</div>'
	);
}

function onPlaylist(l,t) {
        showLoading(jQuery('.playlist .loading'));
        
	jQuery('.player .tx-youtubeapi-list').replaceWith(
		'<div class="tx-youtubeapi-list"><ul><li>' +
		'</li></ul>' +
		'</div>'
	);
        
	jQuery('#aiax-load').load(
		l + ' .playlist', 
		function() {
			jQuery('.playlist .tx-youtubeapi-list ul').replaceWith(jQuery('#aiax-load .tx-youtubeapi-list').html());
			jQuery('.playlist .csc-header h3').text(t);
			rebind();
			hideLoading(jQuery('.playlist .loading'));
			jQuery('.playlist a:first').trigger('click');
                        jQuery('.playlist a:first').parent().parent().addClass('onAir');
		}
	);
	jQuery('.playlist h2').text(t);
}

function rebind() {
	jQuery(".playlist .tx-youtubeapi-list li a").click(function (event) {
		event.preventDefault();

		jQuery('.onAir').removeClass('onAir');
		jQuery(this).parent().parent().addClass('onAir');
		
		var v = jQuery(this).attr("href").split('?',2);
		v=v[1].split('=',2);
		v=v[1].split('&',1);
		v=v[0];
		var t = jQuery(this).parent().parent().children('h3').text();
		onAir(v,t);
	});
}

jQuery(document).ready(function() {

// create HTML needed parts

	// hidden span for loadin ajax element
	jQuery('<span id="aiax-load">&nbsp;</span>').appendTo('.player');

	// hidden div for loadin image gif
	jQuery('<div class="loading"><img  alt="Loading..." src="fileadmin/template/img/ajax-loader.gif" /></div>').appendTo('.playlist');

	// hidden div for inhibit link
	jQuery('<div class="inhibit"></div>').appendTo('.grid');
	
	jQuery(".playlist .tx-youtubeapi-list li:first").addClass('onAir');
	jQuery(".grid li:first").addClass('onPlaylist');	
       
        jQuery('.player .tx-youtubeapi-list').append( jQuery('.player h3'));
	jQuery('.playlist .tx-youtubeapi-list').append(jQuery(".youtube-link"));
 	
 	rebind();
	
	jQuery(".grid a").click(function (event) {
		event.preventDefault();
		
		jQuery('.onPlaylist').removeClass('onPlaylist');
		jQuery(this).parent().addClass('onPlaylist');
		
		var t = jQuery(this).text();
                var ref = jQuery(this).attr('href');
                jQuery(".playlist .youtube-link a").attr('href',ref);
                refs = ref.split('#p/');

                base = refs[0];
                temp = refs['1'];
                p=temp.split('c/');
                 
                params=window.location.href
                if (!temp.match('^u$')) {
                  if (params.search('=')>0) {params = params +'&tx_youtubeapi[playlist]='+escape(p[1]);} 
                  else {params = params +'?tx_youtubeapi[playlist]='+escape(p[1]);}
                }
		onPlaylist(params,t);
	});
});
