/*****************************
 * Initialisation du lecteur *
 *****************************/

var myPlayer = document.createElement('audio');
myPlayer.constrols=false;
myPlayer.preload="auto";
myPlayer.autoplay=true;
myPlayer.id="player";
myPlayer.appendChild(document.createElement('source'));
myPlayer.appendChild(document.createElement('source'));

/** Initialisation de la playlist */
var playlist = new Array("/common/vintage-player/sounds/melody",
		"/common/vintage-player/sounds/by-one",
		"/common/vintage-player/sounds/guerilla",
		"/common/vintage-player/sounds/melody-skit",
		"/common/vintage-player/sounds/stereo-love",
		"/common/vintage-player/sounds/can-t-get-u-now",
"/common/vintage-player/sounds/stereo-love-skit");

/** Volume */
$(function() {
	$("#volumeControl").slider({
		range:'min',
		step:0.2,
		value: 0.6,
		min:0.0,
		max: 1,
		slide: function(event, ui) { 
			updateVolume();
		}
	});
});

/** Barre de défilement */
$(function() {
	$("#bar").slider({
		range:'min',
		min:0,
		max: 100,
		animate: true,
		slide: function(event, ui) { 
			updateTime();
		}
	});
});
/* Ajout du player dans la page */
document.getElementById('song-player').appendChild(myPlayer); 

try {
	loadAudio(0);
} finally {

};






/*************************
 ******* METHODES ********
 *************************/

/**
 * Play/ Pause
 */
function playPause() {
	if (myPlayer.paused) {
		myPlayer.play();
		$('#playPauseButton').removeClass('play');
		$('#playPauseButton').addClass('pause');
	} else {
		myPlayer.pause();
		$('#playPauseButton').removeClass('pause');
		$('#playPauseButton').addClass('play');
	}
}

/**
 * Mute
 */
function mute() {
	if (!myPlayer.muted) {
		myPlayer.muted= true;
		$('#muteButton').removeClass('mute');
		$('#muteButton').addClass('unMute');
	} else {
		myPlayer.muted= false;
		$('#muteButton').removeClass('unMute');
		$('#muteButton').addClass('mute');
	}
}

/**
 * Chargement d'un titre
 */
function loadAudio(i) {
	/* 
	 * Gestion de la musique
	 */

	/* Selection du titre */
	var src = playlist[i];

	/* Remplacement des sources */
	var sources = myPlayer.getElementsByTagName('source');
	sources[0].src = src + '.mp3';
	sources[1].src = src + '.ogg';

	/*gestion de la barre */
	myPlayer.addEventListener("load", function() {
		$("#bar").slider( "option", "max", myPlayer.duration );
		document.getElementById('duration').innerHTML = getTimeProperly(myPlayer.duration);
	}, true);

	/* Reload du player */
	myPlayer.load();

	/*
	 * Gestion de la fin des titres
	 */
	if (i<playlist.length){
		myPlayer.addEventListener('ended', function(e) {
			myPlayer.removeEventListener('ended', arguments.callee, false);
			loadAudio(i + 1);
		}, false);
	}

	/*
	 *  Gestion des styles
	 */
	/* Play / Pause */
	$('#playPauseButton').removeClass('play');
	$('#playPauseButton').addClass('pause');

	/* Liste */
	$('.player-playlist li').removeClass('selected');
	$('.player-playlist li').eq(i).addClass('selected');
}

/**
 * Volume
 */
function updateVolume() {
	if (myPlayer.muted) mute();
	myPlayer.volume = $("#volumeControl").slider('value');
}

myPlayer.onvolumechange = function(e) {
	$("#volumeControl").slider('value',myPlayer.volume);
};

/**
 * Barre de progression
 */
function updateTime() {
	myPlayer.currentTime = $("#bar").slider('value');
}

$("#player").bind('timeupdate', function(e) {
	$("#bar").slider('value', myPlayer.currentTime);});

/*myPlayer.ontimeupdate = function(e) {
	$("#bar").slider('value', myPlayer.currentTime);
};*/

function getTimeProperly(time){
	var timeP = Math.ceil(time);
	return Math.floor(timeP / 60 ) + "." + timeP % 60;

}
