if (!self.name) self.name = 'HDKMAIN';

var nextTrackIndex	=	0;
//cdno,artist,composer,title+' - '+trackTitle,duration
//var Tracks	=	new Array();
var Tracks	=	new Array(
['T.HDK_SuiteOp21.01','Herman D. Koppel','Suite for klaver','Suite for klaver',''],
['T.22602705','Herman D. Koppel','Klaverkoncert nr. 3','Klaverkoncert nr. 3',''],
['T.HDK_Davidssalmer.03','Kunstner','Davidssalmer','Davidssalmer',''],
['T.22602702','Kunstner','Symfoni nr. 5','Symfoni nr. 5',''],
['T.22404612','Kunstner','Moses','Moses',''],
['T.22603203','Kunstner','Fløjtekoncert','Fløjtekoncert','']
);

function findcatnoInPlaylist(catalogNo) {
    	for (x=0;x<Tracks.length;x++) {
		if (Tracks[x][0]==catalogNo) return x;
	}
	return -1;
}
function setTrack(catalogNo,artist,composer,trackTitle,duration,startSec,endSec,fadeInSec,fadeOutSec) {
	/** does this help?
	streamPlayerInitialize();
	*/
//	Do we have this track in playlist already


	var NTI	=	findcatnoInPlaylist(catalogNo);
	if (NTI==-1) {
		// No, so append it
		NTI		=	Tracks.length;
		Tracks[NTI]	=	[catalogNo,artist,composer,trackTitle,duration,false,startSec,endSec,fadeInSec,fadeOutSec];
		//	alert('New Track: '+NTI+': '+trackTitle);
	} else {
		//	alert('Switching to known track '+NTI);
	}
	nextTrackIndex = NTI;
	setTrackFromIndex();
}

function addTrack(catalogNo,artist,composer,trackTitle,duration) {
	//	Do we have this track in playlist already
	var NTI	=	findcatnoInPlaylist(catalogNo);
	if (NTI==-1) {
		// No, so append it
		NTI		=	Tracks.length;
		Tracks[NTI]	=	[catalogNo,artist,composer,trackTitle,duration];
		//	alert('New Track: '+NTI+': '+trackTitle);
	}
}


function nextIndex(step) {
    nextTrackIndex	=	((step+nextTrackIndex) % Tracks.length);
    //alert('Track '+nextTrackIndex);
}


function setTrackFromIndex() {
    var T	=	Tracks[nextTrackIndex];
//  alert('setTrackFromIndex();\nINDEX: '+nextTrackIndex+'\nTRACK: ('+T[0]+','+T[1]+','+T[2]+','+T[3]+','+T[4]+')');
    setPlayerFields(T[0],T[1],T[2],T[3],T[4],T[5],T[6],T[7],T[8],T[9]);
}



/** Accessing Flash Player */
function setPlayerFields(catalogNo,artist,composer,trackTitle,duration,holdit,startSec,endSec,fadeInSec,fadeOutSec) {
    var movie	=	document.getElementById('streamPlayer');
    // alert('Setting Track '+nextTrackIndex+': ('+catalogNo+','+artist+','+composer+','+trackTitle+')');
    movie.SetVariable('catalogNo',catalogNo);
    movie.SetVariable('artist',artist);
    movie.SetVariable('composer',composer);
    var longTitle   =   composer;
    if (longTitle>'')   longTitle   +=  ': '+trackTitle;
    if (artist>'')   longTitle   +=  ' ('+artist+')';
    
    movie.SetVariable('titleLong',longTitle);

    movie.SetVariable('duration',duration);
    if (startSec>0)     movie.SetVariable('trackStartTime',startSec);
    if (endSec>0)       movie.SetVariable('trackStopTime',endSec);
    if (fadeInSec>0)    movie.SetVariable('trackFadeInTime',fadeInSec);
    if (fadeOutSec>0)   movie.SetVariable('trackFadeOutTime',fadeOutSec);

    //alert('Setting trigger variable!');
    if (!holdit) {
	    movie.SetVariable('getNewTrack','true');
    } else {
	    movie.SetVariable('getNewTrack','show');
    }
}

/** API for Flash Player */
function getNextTrack() {
	//alert('getNextTrack()');
	nextIndex(1);
	setTrackFromIndex();
}

function getPrevTrack() {
	//alert('getPrevTrack()');
	nextIndex(-1);	
	setTrackFromIndex();
}

function toggleShuffling() {
	alert('toggleShuffling() not implemented');
}

/** API fpr browser */

function testCall() {
   // alert('JS is ready!');
}

function streamPlayerInitialize() {
	var playerObject	=	document.getElementById('streamPlayer');
//	alert('streamPlayerInitialize(playerObject);\nPLAYER: '+playerObject);
	var T	=	Tracks[nextTrackIndex];

	setTrack('','','Vælg et track ovenfor','',0,0,0,0,0);

//	alert('streamPlayerInitialize(playerObject);\nPLAYER: '+playerObject+'\nINDEX: '+nextTrackIndex+'\nTRACK: ('+T[0]+','+T[1]+','+T[2]+','+T[3]+','+T[4]+')');
}



