var tracksArray = [];
var currentTrack = 0;
var tracksCount = 0;

// FUNCTIONS TO FLASH

function playTrack( track ) {
	var swf = document.getElementById( "audio_player" );
	swf.playTrack( track );
}
function stopTrack() {
	var swf = document.getElementById( "audio_player" );
	swf.stopTrack();
}

// FUNCTIONS FROM FLASH

function playCurrentTrack() {
	tracksArray.removeClass( "active" );
	tracksArray.eq( currentTrack ).addClass( "active" );
	return getTrackByIndex( currentTrack );
}
function stopCurrentTrack() {
	tracksArray.removeClass( "active" );
	return getTrackByIndex( currentTrack );
}
function playNextTrack() {
	currentTrack++;
	if( currentTrack >= tracksCount ) currentTrack = 0;
	return playCurrentTrack();
}
function playPrevTrack() {
	currentTrack--;
	if( currentTrack < 0 ) currentTrack = tracksCount - 1;
	return playCurrentTrack();
}
function getTrackByIndex( index ) {
	var rel = tracksArray.get( index ).getAttribute( "file" );
	return rel;
}

// DOCUMENT READY

$( document ).ready( function() {

	tracksArray = $( "div.disco-songs" );

	// ADD CLICK HANDLERS
	
	tracksArray.children( "span, i" ).click( function() {
		if( $( this.parentNode ).hasClass( "active" ) ) {
			$( this.parentNode ).removeClass( "active" );
			stopTrack( this.parentNode.getAttribute( "file" ) );
		}
		else if( this.parentNode.getAttribute( "file" ) ) {
			tracksArray.removeClass( "active" );
			$( this.parentNode ).addClass( "active" );
			currentTrack = Number( this.parentNode.getAttribute( "track" ) );
			playTrack( this.parentNode.getAttribute( "file" ) );
		}
	} );
} );
