$(document).ready(function(){

     $('div.jp-playlist-player div.jp-playlist').hide();


  $('#hideplaylist').click(function(){
     $('div.jp-playlist-player div.jp-playlist').hide();
   });
   $('#showplaylist').click(function(){
     $('div.jp-playlist-player div.jp-playlist').show();
   });
   $('#toggleplaylist').click(function(){
     $('div.jp-playlist-player div.jp-playlist').toggle();
   })
   
   
	var playItem = 0;

	var myPlayList = [
		{name:"Contrapunctus I",mp3:"http://www.dianaboyle.com/music/lo-res/1-01-Contrapunctus-I.mp3"},
		{name:"Contrapunctus II",mp3:"http://www.dianaboyle.com/music/lo-res/1-01-Contrapunctus-I.mp3"},
		{name:"Contrapunctus III",mp3:"http://www.dianaboyle.com/music/lo-res/1-01-Contrapunctus-I.mp3"},
		{name:"Contrapunctus IV",mp3:"http://www.dianaboyle.com/music/lo-res/1-01-Contrapunctus-I.mp3"},
		{name:"Contrapunctus V",mp3:"http://www.dianaboyle.com/music/lo-res/1-01-Contrapunctus-I.mp3"},
		{name:"Contrapunctus VI",mp3:"http://www.dianaboyle.com/music/lo-res/1-01-Contrapunctus-I.mp3"},
		{name:"Contrapunctus VII",mp3:"http://www.dianaboyle.com/music/lo-res/1-01-Contrapunctus-I.mp3"},
		{name:"Contrapunctus VIII",mp3:"http://www.dianaboyle.com/music/lo-res/1-01-Contrapunctus-I.mp3"},
		{name:"Contrapunctus IX",mp3:"http://www.dianaboyle.com/music/lo-res/1-01-Contrapunctus-I.mp3"},
		{name:"Contrapunctus X",mp3:"http://www.dianaboyle.com/music/lo-res/1-01-Contrapunctus-I.mp3"},
		{name:"Contrapunctus XI",mp3:"http://www.dianaboyle.com/music/lo-res/1-01-Contrapunctus-I.mp3"},
		{name:"Contrapunctus XII rectus",mp3:"http://www.dianaboyle.com/music/lo-res/1-01-Contrapunctus-I.mp3"},
		{name:"Contrapunctus XII inversus",mp3:"http://www.dianaboyle.com/music/lo-res/1-01-Contrapunctus-I.mp3"},
		{name:"Contrapunctus XIII rectus",mp3:"http://www.dianaboyle.com/music/lo-res/1-01-Contrapunctus-I.mp3"},
		{name:"Contrapunctus XIII inversus",mp3:"http://www.dianaboyle.com/music/lo-res/1-01-Contrapunctus-I.mp3"},
		{name:"Contrapunctus XIV unfinished",mp3:"http://www.dianaboyle.com/music/lo-res/1-01-Contrapunctus-I.mp3"},
		];

	// Local copy of jQuery selectors, for performance.
	var jpPlayTime = $("#jplayer_play_time");
	var jpTotalTime = $("#jplayer_total_time");
	var jpStatus = $("#demo_status"); // For displaying information about jPlayer's status in the demo page

	$("#jquery_jplayer").jPlayer({
		ready: function() {
			displayPlayList();
			playListInit(true); // Parameter is a boolean for autoplay.
			demoInstanceInfo(this.element, $("#demo_info")); // This displays information about jPlayer's configuration in the demo page
		},
		oggSupport: true
	})
	.jPlayer("onProgressChange", function(loadPercent, playedPercentRelative, playedPercentAbsolute, playedTime, totalTime) {
		jpPlayTime.text($.jPlayer.convertTime(playedTime));
		jpTotalTime.text($.jPlayer.convertTime(totalTime));

		demoStatusInfo(this.element, jpStatus); // This displays information about jPlayer's status in the demo page
	})
	.jPlayer("onSoundComplete", function() {
		playListNext();
	});

	$("#jplayer_previous").click( function() {
		playListPrev();
		return false;
	});

	$("#jplayer_next").click( function() {
		playListNext();
		return false;
	});

	function displayPlayList() {
		for (i=0; i < myPlayList.length; i++) {
			$("#jplayer_playlist ul").append("<li id='jplayer_playlist_item_"+i+"'>"+ myPlayList[i].name +"</li>");
			$("#jplayer_playlist_item_"+i).data( "index", i ).click( function() {
				var index = $(this).data("index");
				if (playItem != index) {
					playListChange( index );
				} else {
					$("#jquery_jplayer").jPlayer("play");
				}
			});
		}
	}

	function playListInit(autoplay) {
		if(autoplay) {
			playListChange( playItem );
		} else {
			playListConfig( playItem );
		}
	}

	function playListConfig( index ) {
		$("#jplayer_playlist_item_"+playItem).removeClass("jplayer_playlist_current");
		$("#jplayer_playlist_item_"+index).addClass("jplayer_playlist_current");
		playItem = index;
		$("#jquery_jplayer").jPlayer("setFile", myPlayList[playItem].mp3, myPlayList[playItem].ogg);
	}

	function playListChange( index ) {
		playListConfig( index );
		$("#jquery_jplayer").jPlayer("play");
	}

	function playListNext() {
		var index = (playItem+1 < myPlayList.length) ? playItem+1 : 0;
		playListChange( index );
	}

	function playListPrev() {
		var index = (playItem-1 >= 0) ? playItem-1 : myPlayList.length-1;
		playListChange( index );
	}
});


