//unique id, passed into the player itself AND the proxy
var uid = new Date().getTime();

var flashProxy = new FlashProxy(uid, '/public/swf/JavaScriptFlashGateway.swf');

//the track click event
function trackClick(e) {
	//call the actionscript function via the proxy
	flashProxy.call('jsPlayTrack', e);
}

//the jquery ready function is unstable in IE7
onloadsAdd( "$('span.play').css( {_cursor:'hand', cursor:'pointer'} ).click( function() { trackClick( $(this).attr('id') ) } );" );

/*
 * Icon Management
 * In page track icon management
 */
var prevTrackId = 0;

function updateTrackIcons(id) {
	//alert("click");
	var prevTrack = $("#"+prevTrackId);
	var currentTrack = $("#"+id);
	
	if (prevTrackId !== 0) {
		prevTrack.addClass("play");
		prevTrack.html("play");		
		prevTrack.removeClass("nowplaying");
 		prevTrack.parent().addClass("stoppedplay");		
 		prevTrack.parent().removeClass("nowplaying");		
	}
	
	//switch the icon to 'play'
	currentTrack.addClass("nowplaying");
	currentTrack.html("now playing");	
	currentTrack.removeClass("play");	
	currentTrack.parent().addClass("nowplaying");	
	prevTrack.parent().removeClass("stoppedplay");					
	prevTrackId = id;
}

function asPlayTrack(trackID) {	
	//show the current track playing
	updateTrackIcons(trackID);
}	

function asPauseTrack() {
	var prevTrack = $("#"+prevTrackId);
	
	if (prevTrackId !== 0) {
		prevTrack.addClass("play");
		prevTrack.removeClass("nowplaying");		
		prevTrack.html("play");
 		prevTrack.parent().addClass("stoppedplay");		
 		prevTrack.parent().removeClass("nowplaying");				
	}
}

