var currentSongIndex = 0;
var IE = navigator.appName == "Microsoft Internet Explorer";
var songs = new Array();
songs[0] = new songObject("Mock the Mob", "http://www.caedere.com/images/releases/coverclones.jpg", "./media/music/Mock%20the%20Mob.mp3");
songs[1] = new songObject("Bokito", "http://www.caedere.com/images/releases/coverclones.jpg", "./media/music/Bokito.mp3");
songs[2] = new songObject("Mass Emission", "http://www.caedere.com/images/releases/mass_emission_cover.jpg", "./media/music/Mass%20Emission.mp3");
songs[3] = new songObject("Human Decay", "http://www.caedere.com/images/releases/gore_to_banish_fear_cover.jpg", "./media/music/Human%20Decay%20(Dark%20Future).mp3");
var eventsRegistered = false;
function registerEvents()
{
	if (IE == false)
	{
		niftyplayer('niftyPlayer1').registerEvent('onBufferingStarted', 'ShowBuffering();');
		niftyplayer('niftyPlayer1').registerEvent('onBufferingComplete', 'ClearBuffering();');
		niftyplayer('niftyPlayer1').registerEvent('onSongOver', 'getNextSong()');
	}
	eventsRegistered = true;
}

function ShowBuffering()
{
	document.getElementById('playingTrack').innerHTML = "Buffering...";
}

function ClearBuffering()
{
	document.getElementById('playingTrack').innerHTML = songs[currentSongIndex].title;
}


function togglePlay()
{
	var buttonPlay = document.getElementById("play");
	if (eventsRegistered == false)
	{
		registerEvents();
	}
	if (IE == false)
	{
		niftyplayer('niftyPlayer1').playToggle();
	}
	else
	{
		var player = document.getElementById('player');
		if (buttonPlay.src.indexOf('mediaPlayer_04') > 1)
		{
			player.controls.Play();
		}
		else
		{
			player.controls.Pause();
		}
		
	}
	if (buttonPlay.src.indexOf('mediaPlayer_04') > 1)
	{
		buttonPlay.src = 'mp3/mediaPlayer_08.gif';
		document.getElementById('playingTrack').innerHTML = songs[currentSongIndex].title;
		document.getElementById('currentPlayIcon' + currentSongIndex).innerHTML = "<img src=./mp3/speaker.png style='border: 0px; margin: 0px; height: 12px; width: 12px;' id='speaker'>";
	}
	else
	{
		buttonPlay.src = 'mp3/mediaPlayer_04.gif';
		document.getElementById('playingTrack').innerHTML = "(paused)";
		document.getElementById('speaker').parentNode.innerHTML = "";
	}
}

function songObject(title, image, location){
	this.title=title;
	this.image=image;
	this.location=location
}

function getNextSong()
{
	if (eventsRegistered == false)
	{
		registerEvents();
	}
	if (currentSongIndex == songs.length -1)
	{
		currentSongIndex = 0;
		var Songlocation = songs[0].location;
		if (IE == false)
		{
			niftyplayer('niftyPlayer1').loadAndPlay(Songlocation);
		}
		else
		{
			var player = document.getElementById('player');
			player.URL = Songlocation;
			player.controls.play();
		}
		UpdateMp3Data();
	}
	else
	{
		currentSongIndex = currentSongIndex + 1;
		var Songlocation = songs[currentSongIndex].location;
		if (IE == false)
		{
			niftyplayer('niftyPlayer1').loadAndPlay(Songlocation);
		}
		else
		{
			var player = document.getElementById('player');
			player.URL = Songlocation;
			player.controls.play();
		}
		UpdateMp3Data();
	}
}

function UpdateMp3Data()
{
	document.getElementById('playingTrack').innerHTML = songs[currentSongIndex].title;
	document.getElementById('currentTrack').src = songs[currentSongIndex].image;
	var buttonPlay = document.getElementById("play");
	buttonPlay.src = 'mp3/mediaPlayer_08.gif';
	if(document.getElementById('speaker') != null)
	{
		document.getElementById('speaker').parentNode.innerHTML = "";
	}
	document.getElementById('currentPlayIcon' + currentSongIndex).innerHTML = "<img src=./mp3/speaker.png style='border: 0px; margin: 0px; height: 12px; width: 12px;' id='speaker'>";
}

function getPreviousSong()
{
	if (eventsRegistered == false)
	{
		registerEvents();
	}
	if (currentSongIndex == 0)
	{
		currentSongIndex = songs.length -1;
		var Songlocation = songs[currentSongIndex].location;
		if (IE == false)
		{
			niftyplayer('niftyPlayer1').loadAndPlay(Songlocation);
		}
		else
		{
			var player = document.getElementById('player');
			player.URL = Songlocation;
			player.controls.play();
		}
		UpdateMp3Data();
	}
	else
	{
		currentSongIndex = currentSongIndex - 1;
		var Songlocation = songs[currentSongIndex].location;
		if (IE == false)
		{
			
			niftyplayer('niftyPlayer1').loadAndPlay(Songlocation);
		}
		else
		{
			var player = document.getElementById('player');
			player.URL = Songlocation;
			player.controls.play();
		}
		UpdateMp3Data();
	}
}

function loadSong(songIndex)
{
	currentSongIndex = songIndex;
	var Songlocation = songs[currentSongIndex].location;
	if (IE == false)
	{
		if (eventsRegistered == false)
		{
			registerEvents();
		}
		
		niftyplayer('niftyPlayer1').loadAndPlay(Songlocation);
	}
	else
	{
		var player = document.getElementById('player');
		player.URL = Songlocation;
		player.controls.play();
	}
	UpdateMp3Data();
}

function getPlayList()
{
	//var playListTable = document.getElementById('playlist');
	for(var i = 0; i < songs.length; i++)
	{
		var className = 'zebra1';
		if (i%2 == 0)
		{
			className = 'zebra2';
		}
		$('#playlist').append("<tr class='" + className + "'><td><a href='javascript:loadSong(" + i + ")' style='margin-left: 5px'>" + songs[i].title + "</a></td><td><span id='currentPlayIcon" + i + "'></span></td></tr>");
	}
}