var player;

$(function() {
	$('.music_tab').click(function() {
		$('#music_list').show();
		$('#video_list').hide();
		return false;
	});
	
	$('.video_tab').click(function() {
		$('#video_list').show();
		$('#music_list').hide();
		return false;
	});
	
	
	$('#cred_help').dialog({
		autoOpen: false
	});
	$('div.ui-dialog').wrap('<div class="jqueryui"></div>');
	
	$('a.cred_help_link').click(function() {
		$('#cred_help').dialog('open');
		return false;
	});
	
	$('a.cred_link').click(function() {
		$.get( $(this).attr( 'href' ), function(data) {
			$('.notify').remove();
			$(data).find('.notify').css( 'marginBottom', '20px' ).insertBefore( 'div.larger_block:first' );
		} );
		
		return false;
	});
	
	
	$('a.station_download').click(function() {
		var html = 
			'<div><label><input type="radio" name="type" value="download" checked="checked" />Download audio track now</label><br />'
			+ '<label><input type="radio" name="type" value="add" />Add audio track to playlist</label><br />'
			+ '<label><input type="radio" name="type" value="add_all" />Add audio track and artist/track information to playlist</label></div>'
			;
	
	
		$(html).dialog({
			height: 215,
			width: 430,
			position: 'top',
			buttons: {
				'Cancel': function() {
					$(this).dialog('destroy').remove();
				},
				'Go': function() {				
					var action = $(this).find('input[name=type]:checked').val();
				
					if ( action == 'download' ) {
						window.location = $(this).attr( 'href' ) + '&action=download';
					} else {
						$.get( 
							$(this).attr( 'href' ),
							{ 
								method: 'ajax', 
								action: action
							}, 
							function(data) {
								$('.notify').remove();
								$(data).css( 'marginBottom', '20px' ).insertBefore( 'div.larger_block:first' );
							} 
						);
					}
					
					$(this).dialog('destroy').remove();
				}
			}
		}).attr( 'href', $(this).attr('href') );
		$('div.ui-dialog').wrap('<div class="jqueryui"></div>');
		
		return false;
	});
	
	
	
	$('ul.profile_nav a.n1,ul.profile_nav a.n2,ul.profile_nav a.n3,ul.profile_nav a.n4,ul.profile_nav a.n5,ul.profile_nav a.n7,ul.profile_nav a.n8,div.profile_main a.read_more,div.profile_main a.back').live( 'click', function() {
		$.get(
			$(this).attr('href'),
			function(data) {
				$('.profile_main').replaceWith( $(data).find('.profile_main') );
				$('.photo_list a').lightBox();
			}
		);
		return false;
	});
	
	
	$('.photo_list a').lightBox();
	
	
	$('a.lyrics,a.info').click(function() {
		$.get(
			$(this).attr( 'href' ),
			function(data) {
				var elements = $(data);
				var title = elements.find('h6').remove().text();
				
				
				if ( typeof(no_ads) == "undefined" ) {
					$(elements).dialog({
						title: title
					});
				} else {
					$(elements).dialog({
						title: title,
						position: 'top'
					});
				}
				
				$('div.ui-dialog').wrap('<div class="jqueryui"></div>');
			}
		);
		return false;
	});
	
	
	var so = new SWFObject('/lib/mediaplayer/player.swf','mpl','120','120','9');
   so.addVariable('name','mpl');
	so.addParam('wmode','opaque');
	so.addParam('allowscriptaccess','always');
	so.addParam('allowfullscreen','true');
	so.addParam('flashvars','&file=playlist.rss&playlist=none&controlbar=none&repeat=always&id=mpl');
	so.write('video');
	
	
	$('body').append( $('<div id="log2"></div>') );
	$('#log2').hide();
	
	if ( $('#mpl').length == 0 ) {
		$('#playlist_wrapper').empty().append(
			'<span>Please <a href="http://get.adobe.com/flashplayer/" target="_blank">download and install</a> Adobe Flash Player version 9 or later to take advantage of our brand new jukebox!</span>'
		);
	}
	
	
	
	
	$('#video_list li .play').click(function() {
	
		if ( $(this).hasClass('url') ) {
			url = $(this).attr('href');
			
			if ( $('#popup_player').length == 0 ) {
				$('<div id="popup_player"></div>')
					.dialog({
						width: 425,
						height: 325,
						resizable: false,
						close: function() {
							$(this).dialog('destroy');
							$('#popup_player').remove();
						}
					})
					;
			
				$('div.ui-dialog').wrap('<div class="jqueryui"></div>');
			}
		
			var so2 = new SWFObject('/lib/mediaplayer/player.swf','video_player','400','300','9');
			so2.addParam('wmode','opaque');
			so2.addParam('allowscriptaccess','always');
			so2.addParam('allowfullscreen','true');
			so2.addParam('flashvars','file=' + escape(url) + '&type=video');
			so2.write('popup_player');
			return false;
		}
		return true;
	});
	
	
	$('#video_list a.download').click(function(event) {
		event.stopPropagation();
		return true;
	});
});



function playerReady(obj) {
	
	if ( obj['id'] == 'video_player' ) {
		
	
	} else {
	
	player = document.getElementById(obj['id']);
	player.addControllerListener( "PLAYLIST", 'playlistChanged' );
	player.addControllerListener( "ITEM", 'playing' );
	player.addControllerListener( "PLAY", 'statechange' );
	player.addModelListener( 'TIME', 'timechange' );

	$('#play').click(function() {
		if ( $(this).hasClass( 'play' ) ) {
			player.sendEvent("PLAY","true");
			$(this).removeClass( 'play' ).addClass( 'pause' );
		} else {
			player.sendEvent("PLAY","false");
			$(this).removeClass( 'pause' ).addClass( 'play' );
		}
	});
	
	$('#prev').click(function() {
		var playlist = player.getPlaylist();
		var index = player.getConfig()['item'];
		
		if ( index == 0 ) {
			index = playlist.length - 1;
		} else {
			index = (index - 1) % playlist.length;
		}
		
		player.sendEvent( 'ITEM', index );
	});
	
	$('#next').click(function() {
		var playlist = player.getPlaylist();
		var index = player.getConfig()['item'];
		
		index = (index + 1) % playlist.length;
		
		player.sendEvent( 'ITEM', index );
	});
	
	
	$('#volume').slider({ 
		value: player.getConfig()['volume'],
		slide: function(event, ui) {
			player.sendEvent( 'VOLUME', ui.value );
		}
	});
	
	
	$('#music_list li').click(function() {
		var index = $(this).parent().find( 'li' ).index( this );
		player.sendEvent( 'ITEM', index );
	});
	
	var playlist = player.getPlaylist();
	$('#playlist').empty();
	
	var stripe = false;
	for ( var i=0; i < playlist.length; i++ ) {
	
		if ( stripe = !stripe ) { // The single = is on purpose.
			$('#playlist').append( '<li class="stripe">' + playlist[i]['title'] + '</li>' );
		} else {
			$('#playlist').append( '<li>' + playlist[i]['title'] + '</li>' );
		}
	}
	
	$('#playlist li').click(function() {
		var index = $(this).parent().find( 'li' ).index( this );
		player.sendEvent( 'ITEM', index );
	});
	
	
	
	
	}
	
};

function timechange( obj ) {
	var pct = (obj.position * 100) / obj.duration;
	$('#trackbar .inner').css( 'width', pct + '%' );
	
	
	var minutes = Math.floor( obj.position / 60 );
	var seconds = Math.floor( obj.position - (minutes * 60) );
	
	var timestring; 
	if ( seconds < 10 ) {
		timestring = minutes + ':0' + seconds;
	} else {
		timestring = minutes + ':' + seconds;
	}
	
	
	if ( timestring != $('#time').text() ) {
		$('#time').text( timestring );
	}
}


function playing() {
	var playlist = player.getPlaylist();
	var config = player.getConfig();
	
	$('#play').removeClass( 'play' ).addClass( 'pause' );
	$('#status').text( playlist[config['item']].title );
}


function playlistChanged( obj ) {
	var playlist = obj.playlist;
	$('#playlist').empty();
	
	var stripe = false;
	for ( var i=0; i < playlist.length; i++ ) {
	
		if ( stripe = !stripe ) { // The single = is on purpose.
			$('#playlist').append( '<li class="stripe">' + playlist[i]['title'] + '</li>' );
		} else {
			$('#playlist').append( '<li>' + playlist[i]['title'] + '</li>' );
		}
	}
	
	$('#playlist li').click(function() {
		var index = $(this).parent().find( 'li' ).index( this );
		player.sendEvent( 'ITEM', index );
	});
	
	
	if ( play_song ) {
		for ( i=0; i < playlist.length; i++ ) {
			if ( playlist[i].title == play_song ) {
				player.sendEvent( 'ITEM', i );
				break;
			}
		}
	}
}
