/*
Cross-Browser Crossfading Routine
Copyright 2008 David de Regt
http://www.akilla.net/
*/

var setname;
var prefix;
var numims;

var fullURL = document.URL;
var qs = fullURL.substring(fullURL.indexOf('?')+1, fullURL.length);
if (qs.substr(qs.length-1) == "#")
  qs = qs.substring(0,qs.length-1);

var vals = qs.split("&");
for (var i=0; i<vals.length; i++)
{
	var val = vals[i];
	var splitter = val.split("=");
	var key = splitter[0];
	var keyval = splitter[1];

	if (key == "setname") setname = keyval;
	if (key == "prefix") prefix = keyval;
	if (key == "numims") numims = keyval;
}

var fadeconst = .15, faderate = 0, timerinc = 50;
var curfade = 0;
var selpic = 0, setpic = 1;

function popset(setname,prefix,numims)
{
	window.open("popset.html?setname="+setname+"&prefix="+prefix+"&numims="+numims,"popset","width=634,height=544,menubar=no,toolbar=no,location=yes,status=no,scrollbars=no,resizable=no");
}

function init()
{
	var picids = "";
	for (var i=1; i<=numims; i++)
	{
		if (picids != "")
		{
			if (numims <= 20)
				picids += "&nbsp;&nbsp;&nbsp;";
			else
				picids += "&nbsp;&nbsp;";
		}
		picids += '<a href="#" onclick="loadpic('+i+')" id="pic_'+i+'">'+i+'</a>';
		preloadimg("Sets/"+setname+"/"+prefix+padnum(i,2)+".jpg");
	}
	$("picids").innerHTML = picids;
	preloadimg("images/prevbutton_over.gif");
	preloadimg("images/nextbutton_over.gif");

	setopac($("picbox"), 0);
	loadpic(1);
}

function hover(ctrl)
{
	if (ctrl.enabled == false)
		return;

	ctrl.src = ctrl.src.replace(".gif","_over.gif");
}

function hoverout(ctrl)
{
	if (ctrl.enabled == false)
		return;

	ctrl.src = ctrl.src.replace("_over.gif",".gif");
}

function prev()
{
	if (setpic > 1)
		loadpic(setpic-1);
}

function nexto()
{
	if (setpic < numims)
		loadpic(setpic+1);
}

function loadpic(num)
{
	selpic = num;
	if (selpic == numims)
	{
		hoverout($("next"));
		$("next").enabled = false;
		setopac($("next"), 50);
	}
	else
	{
		$("next").enabled = true;
		setopac($("next"), 100);
	}

	if (selpic == 1)
	{
		hoverout($("back"));
		$("back").enabled = false;
		setopac($("back"), 50);
	}
	else
	{
		$("back").enabled = true;
		setopac($("back"), 100);
	}

	if (curfade == 0)
		faderate = fadeconst;
	else
		faderate = -fadeconst;

	if (curfade == 0)
	{
		setpic = num;
		for (var i=1; i<=numims; i++)
			$("pic_"+i).style.color = "";
		$("pic_"+selpic).style.color = "#900418";
		$("picbox").innerHTML = "";
		
		var img = document.createElement("img");
		img.onload = function ()
		{
			setTimeout("fadetimer()", timerinc);
		}
		img.src = "Sets/"+setname+"/"+prefix+padnum(num,2)+".jpg";
		$("picbox").appendChild(img);
	}
	else
	{
		setTimeout("fadetimer()", timerinc);
	}
}

function fadetimer()
{
	curfade += faderate;
	if (faderate > 0)
	{
		if (curfade < 1)
		{
			setopac($("picbox"), curfade*100);
			setTimeout("fadetimer()", timerinc);
		}
		else
		{
			setopac($("picbox"), 100);
			curfade = 1;
		}
	}
	else
	{
		if (curfade > 0)
		{
			setopac($("picbox"), curfade*100);
			setTimeout("fadetimer()", timerinc);
		}
		else
		{
			curfade = 0;
			loadpic(selpic);
			setopac($("picbox"), 0);
		}
	}
}


function setopac(elem, amount)
{
	if (IsIE())
		elem.filters.alpha.opacity = amount;
	else
		elem.style.opacity = amount/100;
}

function padnum(num,padto)
{
	num = num + "";
	while (num.length < padto)
		num = "0"+num;
	return num;
}

function preloadimg(url)
{
	var img = document.createElement("img");
	img.src = url;
	img.style.display = "none";
	document.body.appendChild(img);
}

function IsIE()
{
	if (!navigator.userAgent)
		return false;

	return (navigator.userAgent.indexOf("MSIE") > 0);
}

function $(a) { return document.getElementById(a); }