﻿/*
	Javascript/Flash Sample Player System
	20080828 by E.Taylor
	Reuse at your own risk
*/

var samplePlayer;
var currentIndex = 0;
var sampleLinks = new Array();

window.setTimeout(buildLinkArray, 500);

function linkClick(file, linkref)
{
	if (linkref.innerHTML.toLowerCase() == 'play')
	{
		playSample(file, linkref);
	}
	else
	{
		stopSample();
	}
	linkref.blur();
}

function playSample(file, linkref)
{
	// Play sample at specified array index
	samplePlayer = getMovie("samplePlayer");
	resetAllLinks(-1);
	linkref.innerHTML = "Stop";
	samplePlayer.playSample(file);
}

function stopSample(sender)
{
	// Stop current sample
	samplePlayer.stopSample();
	resetAllLinks(-1);
}

function sampleComplete()
{
	// Callback from Flash
	resetAllLinks(-1);
}

function resetAllLinks(skipIndex)
{
	// Reset all link text to "Play"
	for (var i = 0; i < sampleLinks.length; i++)
	{
		if (i != skipIndex)
		{
			updateLink(i, "Play");
		}
	}
}

function updateLink(index, text)
{
	// Set link text
	sampleLinks[index].innerHTML = text;
}

function getMovie(movieName)
{
	// Utility function - silly browsers
    if (navigator.appName.indexOf("Microsoft") != -1)
    {
		return document.getElementById(movieName);
    }
    else
    {
		return document[movieName][1];
    }
}

function setCurrentSample(index)
{
	// Called by flash
	resetAllLinks(index);
	updateLink(index, "Stop");
}

function buildLinkArray()
{
	var rows = document.getElementById("albumTable").getElementsByTagName("tr");
	for (var r = 0; r < rows.length; r++)
	{
		var links = rows[r].getElementsByTagName("a");
		if (links.length > 0)
		{
			for (var link = 0; link < links.length; link++)
			{
				if (links[link].name == "sampleLink")
				{
					sampleLinks.push(links[link]);
				}
			}
		}
	}
}