

//	~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// FLASH PLAYER API (http://flash-mp3-player.net/)
//	~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

var isplaying= "";
var flashplayer= "";

function onInit(){ flashplayer= true; }

//	~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

function trigger(song){

	if(isplaying == song)
		{ stoplicks(); }																											// wenn gleicher link geklickt -> flashplayer stoppen
	else{																															// wenn anderer link geklickt
		document.getElementById("licks").SetVariable( "method:setUrl", "http://net.guitar-school.de/" + source + "/" + song + "" ); // -> flashplayer neue datei laden
		document.getElementById("licks").SetVariable( "method:play", "" );															// -> flashplayer abspielen
		isplaying= "" + song + "";																									// -> flashplayer ISPLAYING setzen
		if(window.mainplay){ if ( mainplay.getPlayerState() == 1 || mainplay.getPlayerState() == 3 ) mainplay.pauseVideo(); }		// wenn hauptplayer spielt (1)/buffert (3) -> hauptplayer pausieren (2)
		if(window.backgroundplay){	if( backgroundplay.getPlayerState() == 1 || backgroundplay.getPlayerState() == 3 ) backgroundplay.stopVideo(); }	// wenn nebenplayer spielt (1)/buffert (3) -> nebenplayer stoppen (5)
	}
	viewstates("FLASHPLAYER");
}

//	~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

function stoplicks(){
		document.getElementById("licks").SetVariable("method:stop", "");
		isplaying= "";
}


//	~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// YOUTUBEPLAYER API
//	~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

var maininit= 0;

function onYouTubePlayerReady(playerId) {	// wird (jedesmal!) aufgerufen, wenn einer der youtubeplayer geladen ist
	if(playerId=="main"){					// wenn hauptplayer vorhanden, event listener aktivieren, funktion "mainplaystate" dazu siehe unten
		mainplay = document.getElementById("mainplayer");
		mainplay.addEventListener("onStateChange", "mainplaystate");
	}
	if(playerId=="back"){					// wenn nebenplayer vorhanden, event listener aktivieren, funktion "backgroundstate" dazu siehe unten
		backgroundplay = document.getElementById("backgroundplayer");
		backgroundplay.addEventListener("onStateChange", "backgroundstate");
		backgroundplay.playVideo();			// ... und abspielen des videos beginnen (initiativer song)
	}
}

//	~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

function mainplaystate(mainstate){	// HAUPTPLAYER "ONSTATECHANGE"
	if ( mainstate == 1 ) {										// wenn hauptplayer läuft (1)
		if (window.backgroundplay) backgroundplay.stopVideo();	// -> nebenplayer stoppen (5)
		if ( isplaying ) stoplicks();							// -> flashplayer stoppen
	}
	if ( mainstate == -1 && maininit ){							// wenn player unstartet (-1), aber MAININIT hat ( bem.: "klick zu youtube oder auf videothumbnail" )
		if (window.backgroundplay) backgroundplay.stopVideo();	// -> nebenplayer stoppen (5)
		if ( isplaying ) stoplicks();							// -> flashplayer stoppen
		maininit=maininit+1;									// anzahl MAININIT erhöhen
	}
	else if (mainstate == -1) {									// wenn hauptplayer unstartet (-1) und es der erste aufruf ist (=kein MAININIT wert)
		maininit=maininit+1;									// anzahl MAININIT erhöhen
	}
	viewstates("HAUPTPLAYER");
}

//	~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

function backgroundstate(backstate){ // NEBENPLAYER "ONSTATECHANGE"
	if ( backstate == 1 ) {																						// wenn nebenplayer läuft (1)
		if (window.mainplay)																					// 
			{ if ( mainplay.getPlayerState() == 1 || mainplay.getPlayerState() == 3 ) mainplay.pauseVideo(); }	// wenn hauptplayer läuft (1) oder buffert (3) -> hauptplayer pausieren (2)
		if ( isplaying ) stoplicks();																			// -> flashplayer stoppen
	}
	viewstates("NEBENPLAYER");
}


//	~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// DEBUG FUNTION
//	~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

function viewstates( value ){
	document.getElementById("state_calling_from").innerHTML= "" + value + "";
	if (window.mainplay)		document.getElementById("state_mainplay").innerHTML= "State:" + mainplay.getPlayerState() + " Loop: " + maininit + "";
	if (window.backgroundplay)	document.getElementById("state_backgroundplay").innerHTML= "State:" + backgroundplay.getPlayerState() + "";
	if (flashplayer)
	{ 
		if (isplaying) document.getElementById("state_flashplay").innerHTML=  "" + isplaying + "";
		else  document.getElementById("state_flashplay").innerHTML=  "-";
	}
}

