var galleryCount = 0;
var galleryId = null;
var galleryMax = null;
var galleryOpacity = 0;
var galleryDirection = 5;
var galleryImages = new Array(10);
var galleryUrl = '';
var galleryDisplayOrder = null;
var gallerySpeed = 3000;

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;
}

function fadeGallery()
{
	galleryOpacity += galleryDirection;
	var picOverlay = document.getElementById(galleryId + 'B');
	if (picOverlay != null)
	{
		setOpacity(picOverlay, galleryOpacity);
		
		if (galleryOpacity == 100 || galleryOpacity == 0)
		{
			galleryDirection = -galleryDirection;
			changeGallery();
		}
		else
		{
			setTimeout("fadeGallery()", 30);
		}
	}
}

function changeGallery()
{
	galleryCount++;
	if (galleryCount >= galleryMax)
	{
		galleryCount = 0;
	}
	
	if (galleryImages[galleryCount] == null)
	{
		if (galleryId == 'home')
		{
			var img = new Image(840,450);
			img.onload = loadedGallery;
			galleryImages[galleryCount] = img;
			img.src = 'images/home' + galleryCount + '.jpg';
		}
		else
		{
			var img = new Image(670,500);
			img.onload = loadedGallery;
			galleryImages[galleryCount] = img;
			var index = galleryDisplayOrder[galleryCount];
			var imageToDisplay = (index < 10 ? '0' + index : index)
			img.src = galleryUrl + imageToDisplay + '.jpg';
		}
	}
	else
	{
		loadedGallery();
	}
}
	
function loadedGallery()
{
	var picOriginal = document.getElementById(galleryId + 'A');
	var picOverlay = document.getElementById(galleryId + 'B');
	
	if (picOriginal != null && picOverlay != null)
	{
		setOpacity(picOverlay, galleryOpacity);
		var imgUrl = 'url(' + galleryImages[galleryCount].src + ')';
		if (galleryDirection > 0)
		{
			picOverlay.style.backgroundImage = imgUrl;
		}
		else
		{
			picOriginal.style.backgroundImage = imgUrl;
		}
		setTimeout("fadeGallery()", gallerySpeed);
	}
}

function homepage_gallery()
{
	galleryCount = 0;
	galleryMax = 10;
	galleryId = 'home';
	gallerySpeed = 3000;
	
	for (var i = 0; i < galleryMax; i++)
	{
		galleryImages[i] = null;
	}
	
	changeGallery();
}

function product_gallery(url, displayOrder)
{
	galleryCount = 0;
	galleryId = 'gallery';
	galleryUrl = url;
	galleryDisplayOrder = displayOrder.split(',');
	galleryMax = galleryDisplayOrder.length;
	gallerySpeed = 2000;
	
	for (var i = 0; i < galleryMax; i++)
	{
		galleryImages[i] = null;
	}
	
	changeGallery();
}