//var preSwapSrc = "";
//var preSwapName = "";
var ovSwapElem = null;
var ovClickElem = null;

function preloadImages(imageArray)
{
	document.preArray = new Array(imageArray.length);
	for (var i = 0; i < imageArray.length; i++) {
		document.preArray[i] = new Image();
		document.preArray[i].src = imageArray[i];
	}
}

/*
function swapSrc(name, source)	// set-style image swap
{
	if (preSwapSrc != "")	// browser bugs can skip the onmouseout()
		restoreSrc();
	preSwapSrc = document[name].src;
	preSwapName = name;
	document[name].src = source;
}

function autoSwapSrc(name, thisSource)
{
 	var iCut = thisSource.lastIndexOf('_b.');
 	if (iCut < 0)
	 	iCut = thisSource.lastIndexOf('_l.');
 	if (iCut < 0)
 		iCut = thisSource.lastIndexOf('.')
 	thisSource = thisSource.slice(0, iCut) + '_o.gif';

 	swapSrc(name, thisSource);
}*/

function hoverImage(elem)
{
	if (ovSwapElem)
		unHoverImage(ovSwapElem);
	ovSwapElem = elem;
	var src = ovSwapElem.src;
	iCut = src.lastIndexOf('.')
	if (iCut > 0) {
		src = src.slice(0, iCut) + '_o' + src.slice(iCut);
		ovSwapElem.src = src;
	}
}

function unHoverImage()
{
	if (ovSwapElem && ovSwapElem.src) {
		var src = ovSwapElem.src;
		iCut = src.lastIndexOf('_o.')
		if (iCut > 0) {
			src = src.slice(0, iCut) + src.slice(iCut + 2);
			ovSwapElem.src = src;
		}
		ovSwapElem = null;
	}
}

function autoToggleSrc(elem)
{
	var src = elem.src;
 	var iCut = src.lastIndexOf('_0');
 	if (iCut > 0) {
 		src = src.slice(0, iCut) + '_1' + src.slice(iCut + 2);
 	} else {
	 	iCut = src.lastIndexOf('_1');
 		src = src.slice(0, iCut) + '_0' + src.slice(iCut + 2);
 	}
	elem.src = src;
}


function clickImage(elem)
{
	if (ovClickElem)
		unClickImage(ovClickElem);
	ovClickElem = elem;
	var src = ovClickElem.src;
	iCut = src.lastIndexOf('.')
	if (iCut > 0) {
		src = src.slice(0, iCut) + '_d' + src.slice(iCut);
		ovClickElem.src = src;
	}
}

function unClickImage(elem)
{
	if (ovClickElem && ovClickElem.src) {
		var src = ovClickElem.src;
		iCut = src.lastIndexOf('_d.')
		if (iCut > 0) {
			src = src.slice(0, iCut) + src.slice(iCut + 2);
			ovClickElem.src = src;
		}
		ovClickElem = null;
	}
}

function handleRadioClick(formName, name, value)
{
	var elem = getElement('ov_rad_' + name + '_' + value);
	if (document.forms[formName].elements[name].value != value) {
		unHoverImage(elem);
		autoToggleSrc(elem);
		var oldName = document.forms[formName].elements[name].value ? 'ov_rad_' + name + '_' + document.forms[formName].elements[name].value : '';
		document.forms[formName].elements[name].value = value;

		if (oldName) {
			objects = document.getElementsByTagName("img");
			for (var i = 0; i < objects.length; i++) {
				if (objects[i].name == oldName)
					autoToggleSrc(objects[i]);
			}
		}
	}
}
/*
function handleListOver(formName, name, value)
{
	var elem = getElement('ov_rad_' + name + '_' + value);
	if (document.forms[formName].elements[name].value != value) {
		unHoverImage(getElement(elem));
		autoToggleSrc(elem);
		var oldName = document.forms[formName].elements[name].value ? 'ov_rad_' + name + '_' + document.forms[formName].elements[name].value : '';
		document.forms[formName].elements[name].value = value;

		if (oldName) {
			objects = document.getElementsByTagName("img");
			for (var i = 0; i < objects.length; i++) {
				if (objects[i].name == oldName)
					autoToggleSrc(objects[i]);
			}
		}
	}
}*/

// javascript animation
var iFrame = 0;
var objName;
var filenames;

function animateFrame()
{
	swapSrc(objName, filenames[iFrame % filenames.length]);
	iFrame++;
}
function animateImage(name, imageFiles, intervalMS) {
	objName = name;
	filenames = imageFiles;
	setInterval(animateFrame, intervalMS);
}

