/**
 * Set the opacity of an object.
 * 
 * @param obj
 * @param opacity value from 0 to 100
 * @return
 */
function setOpacity(obj, opacity)
{
	opacity = (opacity == 100)?99.999:opacity;

	// IE/Win
	obj.style.filter = "alpha(opacity:"+opacity+")";

	// Safari<1.2, Konqueror
	obj.style.KHTMLOpacity = opacity/100;

	// Older Mozilla and Firefox
	obj.style.MozOpacity = opacity/100;

	// Safari 1.2, newer Firefox and Mozilla, CSS3
	obj.style.opacity = opacity/100;
}

/**
 * Fade an object from 0 to 100 opacity.
 * 
 * @param objId
 * @param opacity
 * @return
 */
function fadeIn(objId,opacity)
{
	if (document.getElementById)
	{
		obj = document.getElementById(objId);
		if (opacity <= 100)
		{
			if (obj.complete)
			{
				setOpacity(obj, opacity);
				opacity += 10;
			}
			window.setTimeout("fadeIn('"+objId+"',"+opacity+")", 100);
		}
	}
}

/**
 * Fade an object from 100 to 0 opacity and then swap.
 * 
 * @param objId
 * @param opacity
 * @return
 */
function fadeOut(objId,opacity)
{
	if (document.getElementById)
	{
		obj = document.getElementById(objId);
		if (opacity >= 0)
		{
			setOpacity(obj, opacity);
			opacity -= 10;
			window.setTimeout("fadeOut('"+objId+"',"+opacity+")", 100);
		}
		else
		{
			swapImage(objId);
		}
	}
}
 

var last_image = 0;
var images = new Array(
				"/files/2009/11/FOSI-Web-Graphic-Performance.jpg",
				"/files/2009/11/FOSI-Web-Graphic-Hard-Work.jpg",
				"/files/2009/11/FOSI-Web-Graphic-Accuracy.jpg",
				"/files/2009/11/FOSI-Web-Graphic-Service.jpg",
				"/files/2009/11/FOSI-Web-Graphic-Price.jpg",
				"/files/2009/11/FOSI-Web-Graphic-Claims.jpg");
for(i = 0; i < images.length; i++)
{
	im = new Image();
	im.src = images[i];
}

/**
 * Set a random start image.
 * Wait an initial period of time, and then begin the fading process.
 * 
 * @return
 */
function loadFade()
{
	last_image = Math.floor(Math.random() * images.length);
	document.getElementById('header-image').src = images[last_image];
	self.setTimeout("doFade('header-image')", 6000);
}

/**
 * Fade out and then wait before doing it again.  
 * 
 * @param objId
 * @return
 */
function doFade(objId)
{
	fadeOut(objId, 100);

	self.setTimeout("doFade('"+objId+"')", 8000);
}

function swapImage(objId)
{
	//select the next image in sequence
	var next_image = last_image + 1;
	if (next_image >= images.length)
	{
		next_image = 0;
	}
	
	//save history
	last_image = next_image;

	//update the image
	obj = document.getElementById(objId);
	obj.src = images[next_image];
	fadeIn(objId, 0);
}

