var leftarrow_off = new Image(30, 138);
leftarrow_off.src = "layout/images/sl.gif";
var leftarrow_on = new Image(30, 138);
leftarrow_on.src = "layout/images/slrl.gif";
var rightarrow_off = new Image(30, 138);
rightarrow_off.src = "layout/images/sr.gif";
var rightarrow_on = new Image(30, 138);
rightarrow_on.src = "layout/images/srrl.gif";

var numImages;
var thumbnails;
var pics;
var imageNames;
var position;
var scroller;
var scrollTime;
var offset;

var pixStep = 5;
var timeStep = 20;

var blank = new Image(1,1);
blank.src = "layout/images/blank.gif";

var browserName = navigator.userAgent.toLowerCase();
var is_ie5 = (browserName.indexOf("msie 5") != -1);

var loading = new Image(230, 23);
loading.src = "../layout/images/loading.gif";

function viewImage(i)
{
	var imageNum = (i + offset)%numImages;
	var w = pics[imageNum].width;
	var h = pics[imageNum].height;
	if (is_ie5)
	{
		var border = document.getElementById("image_viewer").currentStyle["borderWidth"];
		var borderInt = parseInt(border.substring(0, border.length - 2));
		w += 2*borderInt;
		h += 2*borderInt;
	}
	document.getElementById("image_viewer").style.width = w + "px";
	if (is_ie5) document.getElementById("loading_msg").style.width = w + "px";
	document.getElementById("image_viewer").style.height = h + "px";
	document.getElementById("viewer_image").src = blank.src;
	document.getElementById("image_viewer_wrapper").style.display = "block";
	if (!pics[imageNum].src)
	{
		pics[imageNum].onload = function() {document.getElementById("viewer_image").src = pics[imageNum].src;}
		pics[imageNum].src = imageNames[imageNum];
	}
	else
	{
		document.getElementById("viewer_image").src = pics[imageNum].src;
	}
}

function closeView()
{
	document.getElementById("viewer_image").src = blank.src;
	document.getElementById("image_viewer_wrapper").style.display = "none";
}

function initScroller()
{
	numImages = 9;
	thumbnails = new Array(numImages);
	pics = new Array(numImages);
	imageNames =  new Array(numImages);
	pics[0] = new Image(670, 503);
	imageNames[0] = "art/bad@$$sm.jpg";
	pics[1] = new Image(591, 768);
	imageNames[1] = "art/tower.gif";
	pics[2] = new Image(670, 503);
	imageNames[2] = "art/lake.gif";
	pics[3] = new Image(576, 768);
	imageNames[3] = "art/observatory.gif";
	pics[4] = new Image(670, 440);
	imageNames[4] = "art/spaceship.gif";
	pics[5] = new Image(670, 576);
	imageNames[5] = "art/spacestation.gif";
	pics[6] = new Image(627, 395);
	imageNames[6] = "art/spaceship2.gif";
	pics[7] = new Image(670, 496);
	imageNames[7] = "art/temple.gif";
	pics[8] = new Image(670, 311);
	imageNames[8] = "art/spaceship3.gif";

	for (var i=0; i<numImages; i++)
	{
		thumbnails[i] = document.getElementById("th" + i);
	}
	offset = 0;
	position = 0;
	scroller = document.getElementById("scroll_content");

	if (is_ie5)
	{
		var scrollerBody = document.getElementById("scroller_body");
		var height = scrollerBody.currentStyle["height"];
		var heightInt = parseInt(height.substring(0, height.length - 2));
		var border = scrollerBody.currentStyle["borderWidth"];
		var borderInt = parseInt(border.substring(0, border.length - 2));
		document.getElementById("scroller_body").style.height = 2*borderInt + heightInt + "px";
	}
}

function rotateRight()
{
	var temp = thumbnails[numImages-1].src;
	var temp_t = thumbnails[numImages-1].title;
	for (var i=numImages-1; i>0; i--)
	{
		thumbnails[i].src = thumbnails[i-1].src;
		thumbnails[i].title = thumbnails[i-1].title;
	}
	thumbnails[0].src = temp;
	thumbnails[0].title = temp_t;
	if (offset == 0) offset = numImages - 1;
	else offset--;
}

function rotateLeft()
{
	var temp = thumbnails[0].src;
	var temp_t = thumbnails[0].title;
	for (var i=0; i<numImages-1; i++)
	{
		thumbnails[i].src = thumbnails[i + 1].src;
		thumbnails[i].title = thumbnails[i + 1].title;
	}
	thumbnails[numImages-1].src = temp;
	thumbnails[numImages-1].title = temp_t;
	offset = (offset + 1) % numImages;
}

function scrollLeft()
{
	if (position + pixStep >= 0)
	{
		var lastWidth = thumbnails[numImages-1].width;
		position = position - lastWidth - 7;
		rotateRight();
	}
	position = position + pixStep;
	scroller.style.left = position + "px";
	scrollTime = setTimeout("scrollLeft()", timeStep);
}

function scrollRight()
{
	var firstWidth = thumbnails[0].width;
	if (position + firstWidth - pixStep < 0)
	{
		position = position + firstWidth + 7;
		rotateLeft();
	}
	position = position - pixStep;
	scroller.style.left = position + "px";
	scrollTime = setTimeout("scrollRight()", timeStep);
}

function addImage(w, h, s)
{
	thumbnails[numImages] = new Image(w, h);
	thumbnails[numImages].src = s;
	numImages++;
}

function leftMouseover(img_h)
{
	img_h.src = leftarrow_on.src;
	document.getElementById("sl_button").style.borderColor = "#A0D0A0";
	scrollLeft();
}

function leftMouseout(img_h)
{
	img_h.src = leftarrow_off.src;
	document.getElementById("sl_button").style.borderColor = "#165117";
	clearTimeout(scrollTime);
}

function rightMouseover(img_h)
{
	img_h.src = rightarrow_on.src;
	document.getElementById("sr_button").style.borderColor = "#A0D0A0";
	scrollRight();
}

function rightMouseout(img_h)
{
	img_h.src = rightarrow_off.src;
	document.getElementById("sr_button").style.borderColor = "#165117";
	clearTimeout(scrollTime);
}

