/*
	appelee par le body onload, cette fonction affiche les players mp3 et genere les playlistes associées
	auteur :BoOz - booz@rezo.net
	code gnu - gpl

 par BoOz booz AT rezo.net
*
* Fonctionne avec jQuery.
**/




var aflax = new AFLAX("plugins/Lecteur_multimedia/AFLAX/aflax.swf"); 
var soundObj = null;
var track_index = 0;
var playa='';


//tableau des mp3 de la page
mp3Array = new Array();
setInterval("timer_()", 1000);

$(document).ready(function(){
var aff= $("a[@rel='enclosure'][@href$=mp3]").size();

var requiredVersion=new com.deconcept.PlayerVersion([8,0,0]);
var installedVersion=com.deconcept.FlashObjectUtil.getPlayerVersion();
if(installedVersion.versionIsValid(requiredVersion)==true && aff > 0){
var player_aflax_ok=true;
//$("body").css({background:"#00FF00"});
//interface du player en html


/**
// Activer le player js
 
playa  = '<form id="player_interface" style="background-color:#CFD4E6;padding:10px;margin-bottom:10px">' +		
		 '<input type="text" id="posi" style="float:right;width:100px" />' +
		 '<div id="pos" style="width:160px;color : #FFFFFF"/></div>' +
		 
		 '<div style="margin-top:5px">' +
		 '<input type="text" id="etat" value="Loading..." style="float:right;width:100px" />' +
			'<input type="button"  name="joe" id="play" onClick="soundObj.start()" value="Play" />' +
			'<input type="button"  name="jack" onClick="soundObj.stop()" value="Stop" />' +
			'<input type="button"  name="william"" id="next" onClick="player_prev()" value="<" />' +
			'<input type="button"  name="avrell" id="next" onClick="player_next()" value=">" />' +
		'</div>' +
		
		'</form>';


//Afficher l'interface du player dans la page

if($('div#player').size() !='0')
{
$('div#player').html(playa);
}else{
$('body').prepend(playa);
//$("body").css({background:"#FF0000"});

}


$("#player_interface").css({position:"fixed", bottom:"0%", right:"0%", background:"#000", width:"380px", margin:"0px", cursor:"pointer"});
setTimeout('$("#player_interface").slideUp("slow");', 5000);
setTimeout('$("#player_interface").toggle().css({height:"3px"})',6000);
$("#player_interface").hover(function(){ $(this).css({height:"60px"}); },function(){ $(this).css({height:"3px"}); });

//$("#player_interface").css({height:"1px",width:"1px",overflow:"hidden"});
//setTimeout('$("#player_interface").hide();',7000);



************/

}else{
//$("body").css({background:"#FF0000"});
playa  = '<form id="player_interface" style="background-color:#CFD4E6;padding:5px;margin-bottom:10px">' +
		  '<div id="musicplayer" style="float:right;width:30px">' +
         '</div>' +
		'</form>';
		
		$('div#player').html(playa);
		$('div#player').css({height:"1px",width:"1px",background:"#FFFFFF",overflow:"hidden"});

}






	$("a[@rel='enclosure'][@href$=mp3]").each(
		function(i) {	 
				// we store mp3 links in an array
				mp3Array.push(this.href);
				//demarrer le lecteur lors d'un click
				$(this).click(
		             function(e)
		             {
		                 e.preventDefault();
		                 player_play(i);
		             }
		         );
		         //a passer en .ajoute_musicplayer()	
				$(this).before('<span class="play_">play</span>&nbsp;');
				//reperer les li
				//$(this).parents("li").addClass("audio");
		        //$(".liste-articles li[@class!='audio']").hide();
		             
		}
	);



$("span.play_").each(

function(i) {
 
 $(this).css({background:"#E6ECFF", cursor:"pointer"});

	$(this).toggle(
		             function(e)
		             {    
		              
						
						$("#musicplayer").html('');

						$("span.play_on").html('play');
						$("span.play_on").css({background:"#E6ECFF", cursor:"pointer"});
						$("span.play_on").removeClass("play_on");
						
						 $(this).css({background:"#FF0000", cursor:"pointer"});
						 $(this).addClass('play_on');
						 $(this).html('stop');
						 player_play(i);
		              						
						},function(e){
						$(this).css({background:"#E6ECFF", cursor:"pointer"});
						$("span.play_on").removeClass("play_on");
						$(this).html('play');

						$("#musicplayer").html('');
						soundObj.stop(); 

						}
						
		         );

}

);

	
// .play() plugin jquery

function player_play(i){
	
	//Si flash 8 et aflax OK
	if(player_aflax_ok==true){

	//jouer le son
	soundObj.stop(); 
	$('#etat').val("Loading...");
	file1=(mp3Array[i].split("/"))[(mp3Array[i].split("/")).length-1];
	$("#pos").html(file1) ;
	soundObj.loadSound( mp3Array[i] , true);
	track_index=i; 
	}else{
	//si flash < 8	
	//Ajouter le musicplayer
	 playlist='';
						deb=0;
							for(j=i; j < mp3Array.length ; j++) {
								if(deb > 0){
								playlist = playlist + ',' + mp3Array[j];
								}else{
								playlist = mp3Array[j];
								deb=1;
								}
							}

						$("#musicplayer").html('<object ' +
						'classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" ' +
						'codebase="' +
						'http://fpdownload.macromedia.com/pub/shockwave/cabs/'+
						'flash/swflash.cab#version=6,0,0,0"' +
						'width="18" height="18" align="middle">' +
						'<param name="wmode" value="transparent" />' +
						'<param name="allowScriptAccess" value="sameDomain" />' +
						'<param name="flashVars" value="song_url='+playlist+'" />' +
						'<param name="movie" value="'+musicplayerurl+'?autoplay=true" />' +
						'<param name="quality" value="high" />' +
						'<embed style="margin-left:0.1em" ' +
						'src="'+musicplayerurl+'?autoplay=true" '+
						'flashVars="song_url='+playlist+'"' +
						'quality="high" wmode="transparent" width="18" height="18" name="player"' +
						' allowScriptAccess="sameDomain" type="application/x-shockwave-flash"' +
						' pluginspage="http://www.macromedia.com/go/getflashplayer" /></object>');
											
							
							
	}
	
	}

});




	

// autres fonctions player

	function go()
	{
		AFLAX.trace("Here")
		
		soundObj = new AFLAX.FlashObject(aflax, "Sound");

		AFLAX.trace(soundObj.id);
		
		soundObj.exposeFunction("loadSound", soundObj);		
		soundObj.exposeFunction("start", soundObj);		
		soundObj.exposeFunction("stop", soundObj);		
		soundObj.exposeProperty("position", soundObj);
		soundObj.exposeProperty("id3", soundObj);

/*	
soundObj.onID3 = function(){
    for( var prop in soundObj.id3 ){
     $("#pos").html(prop + " : "+ my_sound.id3[prop] + kiki +" ") ;
    }
}
   
*/ 
    
		soundObj.mapFunction("addEventHandler");		
		
		soundObj.addEventHandler("onLoad", "readyToPlay");
		soundObj.addEventHandler("onSoundComplete", "finished");
		
		file1=(mp3Array[track_index].split("/"))[(mp3Array[i].split("/")).length-1];
		$("#pos").html(file1) ;
		soundObj.loadSound( mp3Array[track_index] , true);
		soundObj.stop();
	}
	


	
	
	function readyToPlay()
	{
		$('#etat').val("Loaded !");
	}
	
	function finished()
	{
		$('#aflaxlogger').html("Fini");	
		track_index++;
		file1=(mp3Array[track_index].split("/"))[(mp3Array[track_index].split("/")).length-1];
		$("#pos").html(file1) ;
		soundObj.loadSound( mp3Array[track_index] , true);
		
	}
	
	function player_next()
	{	
		track_index++;
		$('#aflaxlogger').html("Lecture");	
		$('#etat').val("Loading...");
		file1=(mp3Array[track_index].split("/"))[(mp3Array[track_index].split("/")).length-1];
		$("#pos").html(file1) ;
		soundObj.loadSound( mp3Array[track_index] , true);
		
	}
	

	
	function player_prev()
	{	
		track_index--;
		file1=(mp3Array[track_index].split("/"))[(mp3Array[track_index].split("/")).length-1];
		$("#pos").html(file1) ;
		soundObj.loadSound( mp3Array[track_index] , true);
		
	}


	function timer_()
	{
		if(soundObj != null)
		{
			var t = soundObj.getPosition();
			$("#posi").val("Time : " + t/1000 ) ;
		}
	}
	
	
	
	
//ajouter un player une fois le tableau connu
//a passer en .ajoute_musicplayer()	
/*
$("a[@rel='enclosure'][@href$=mp3]").each(

function(i) {
	playlist='';
	deb=0;
		for(j=i; j < mp3Array.length ; j++) {
			if(deb > 0){
			playlist = playlist + ',' + mp3Array[j];
			}else{
			playlist = mp3Array[j];
			deb=1;
			}
		}

$(this).before('<span class="player"><object style="margin-right:0.1em" ' +
	'classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" ' +
	'codebase="' +
	'http://fpdownload.macromedia.com/pub/shockwave/cabs/'+
	'flash/swflash.cab#version=6,0,0,0"' +
	'width="18" height="18" align="middle">' +
	'<param name="wmode" value="transparent" />' +
	'<param name="allowScriptAccess" value="sameDomain" />' +
	'<param name="flashVars" value="song_url='+playlist+'" />' +
	'<param name="movie" value="'+musicplayerurl+'?autoplay=false" />' +
	'<param name="quality" value="high" />' +
	'<embed style="margin-left:0.1em" ' +
	'src="'+musicplayerurl+'?autoplay=false" '+
	'flashVars="song_url='+playlist+'"' +
	'quality="high" wmode="transparent" width="18" height="18" name="player"' +
	' allowScriptAccess="sameDomain" type="application/x-shockwave-flash"' +
	' pluginspage="http://www.macromedia.com/go/getflashplayer" /></object></span>');

}
)

*/
//ajouter un player	(image ou flash dans iframe si flash 7)
	
//player one pix	

var ap_instances = new Array();

function ap_stopAll(playerID) {
	for(var i = 0;i<ap_instances.length;i++) {
		try {
			if(ap_instances[i] != playerID) document.getElementById("audioplayer" + ap_instances[i].toString()).SetVariable("closePlayer", 1);
			else document.getElementById("audioplayer" + ap_instances[i].toString()).SetVariable("closePlayer", 0);
		} catch( errorObject ) {
			// stop any errors
		}
	}
}

function ap_registerPlayers() {
	var objectID;
	var objectTags = document.getElementsByTagName("object");
	for(var i=0;i<objectTags.length;i++) {
		objectID = objectTags[i].id;
		if(objectID.indexOf("audioplayer") == 0) {
			ap_instances[i] = objectID.substring(11, objectID.length);
		}
	}
}

var ap_clearID = setInterval( ap_registerPlayers, 100 );


function play() {
    document.monFlash.SetVariable("player:jsPlay", "");
}
function pause() {
    document.monFlash.SetVariable("player:jsPause", "");
}
function stop() {
    document.monFlash.SetVariable("player:jsStop", "");
}
function volume(n) {
    document.monFlash.SetVariable("player:jsVolume", n);
}
