function GetElementByID (elementName)
{
	if (document.getElementById && (document.getElementById(elementName) != null))
		return document.getElementById(elementName);
	
	if (document.getElementByName && (document.getElementByName(elementName) != null))
		return document.getElementByName(elementName);

	if (document.layers && (document.layers(elementName) != null))
		return document.layers(elementName);

	if (document.all && (document.all (elementName) != null))
		return document.all(elementName);
	
	return null;
}


function SwitchImages (newSelectedIndex, imageObjects, thumbImages, largeImages, selectionHolder, showTumbnails, templateText)
{
	var leftDisplayIndex = 0;
	var numThumbs	   	= imageObjects.length - 1;
	var numImages		= largeImages.length;
	var infoText		= "";

	///We calculate the new selected index
	if (newSelectedIndex >= largeImages.length)
		newSelectedIndex = 0;
	if (newSelectedIndex < 0)
		newSelectedIndex = largeImages.length - 1;

	objSelectionHolder = GetElementByID (selectionHolder);
	if (objSelectionHolder != null)
	{
		objSelectionHolder.value = newSelectedIndex ;
	}

	if (showTumbnails == "True")
	{
		leftDisplayIndex = newSelectedIndex - 1;
		if (leftDisplayIndex < 0)
			leftDisplayIndex = thumbImages.length - 1;
		originalLeftIndex = leftDisplayIndex;
	}
	
	if (infoTextLabel != null)
	{
		infoText = templateText.replace ("{0}", newSelectedIndex + 1);
		infoText = infoText.replace ("{1}", numImages);
		infoTextLabel.innerHTML = infoText;
	}

	///We display the images	
	imageObjects[0].src = largeImages[newSelectedIndex];
	if (showTumbnails == "True")
	{
		for (i = 1; i <= numThumbs && i<= thumbImages.length; i++)
		{
			imageObjects[i].src = thumbImages[leftDisplayIndex];
			leftDisplayIndex++;
			if (leftDisplayIndex >= thumbImages.length)
				leftDisplayIndex = 0;
		}
	}
	
	return newSelectedIndex;
}

