var pause = false;
var buttonwidth = 175;
var btns = new Array();
var direction = -1;
var see;
var zoom = 1.5;
// Init function
function initScroll()
{
	if(document.getElementById('scrollbox').hasChildNodes()) {
		var children = document.getElementById('scrollbox').getElementsByTagName('div');
		var len = children.length;
		for (var i = 0; i < len; i++) {
			btns[i] = children[i];
			btns[i].id = 'btn'+i;
			btns[i].onmouseover = seeMe;
			btns[i].onmouseout = unseeMe;
		}
		for (i=0; i < len; i++) {
			temp = document.createElement("div");
			temp.className = btns[i].className;
			temp.innerHTML = btns[i].innerHTML;
  			document.getElementById('scrollbox').appendChild(temp);
  			temp.style.left = (parseInt(btns[len-1].style.left) + buttonwidth + 1 + parseInt(btns[i].style.left)) + "px";
  			btns[i+len] = temp;
  			btns[i+len].id = 'btn'+(i+len);
  			btns[i+len].onmouseover = seeMe;
  			btns[i+len].onmouseout = unseeMe;
  		}
		// Let's go...
		doScroll();	
	}
}
	
function setHead(x)
{
	document.getElementById('header').style.backgroundImage = "url(images/headers/h_"+x+")";
	document.getElementById('headerlink').style.display = "none";
}

function resetHead()
{
	document.getElementById('headerlink').style.display = "block";
}
	
function unseeMe()
{
	pause = false;
	clearTimeout(see);
	see = null;
}
	
function eTarg(e)
{
	var targ;
	if (e.target) targ = e.target;
	else if (e.srcElement) targ = e.srcElement;
	if (targ.nodeType == 3) // defeat Safari bug
		targ = targ.parentNode;
	return targ;
}
	
function seeMe(event)
{
	if( !event ) {
		if( window.event ) {
			//Internet Explorer
			event = window.event;
		} else {
			//total failure, we have no way of referencing the event
			return;
		}
	}
	targ = eTarg(event);
	if(targ.tagName == "A") {
		targ = targ.parentNode;
	}
	pause = true;
	doShunt(targ.id);
}
function doShunt(id)
{
	btn = document.getElementById(id);
	var amnt = 0;
	if(parseInt(btn.style.left) < 0) {
		direction = 1;
		if(parseInt(btn.style.left) < -25) {
			amnt = 10;
		} else if(parseInt(btn.style.left) < -15){
			amnt = 5;
		} else if(parseInt(btn.style.left) < -5){
			amnt = 2;
		} else {
			amnt = 1;
		}
	} else if((parseInt(btn.style.left) + buttonwidth + 1) > 668) {
		direction = -1;
		if(((parseInt(btn.style.left) + buttonwidth + 1) - 667) > 25) {
			amnt = 10;
		} else if(((parseInt(btn.style.left) + buttonwidth + 1) - 667) > 15){
			amnt = 5;
		} else if(((parseInt(btn.style.left) + buttonwidth + 1) - 667) > 5){
			amnt = 2;
		} else {
			amnt = 1;
		}
	} else {
		clearTimeout(see);
		see = null;
		return;
	}
	for (var j = 0; j < btns.length; j++) {
		btns[j].style.left = (parseInt(btns[j].style.left) + (amnt*direction)) + "px";
	}
	see = setTimeout("doShunt('"+id+"');",20);
}
	
function button(dir,i)
{
	pause = true;
	direction = dir;
	// Zoom it two...
	if(i<(zoom*buttonwidth)) {
		if(((zoom*buttonwidth) - i) > 25) {
			amnt = 10;
		} else if(((zoom*buttonwidth) - i) > 15){
			amnt = 5;
		} else if(((zoom*buttonwidth) - i) > 5){
			amnt = 2;
		} else {
			amnt = 1;
		}
		for (var j = 0; j < btns.length; j++) {
			btns[j].style.left = (parseInt(btns[j].style.left) + (amnt*direction)) + "px";
		}
		i += amnt;
		toBottom();
		setTimeout("button("+dir+","+i+");",20);
	} else {
		pause = false;
	}
}
	
function toBottom()
{
	if(direction < 0) {
		while((parseInt(btns[0].style.left) + buttonwidth) < 0) {
			temp = btns[0];
			for(var i=1;i<btns.length;i++) {
				btns[i-1] = btns[i];
			}
			btns[btns.length-1] = temp;
			btns[btns.length-1].style.left = (parseInt(btns[btns.length-2].style.left) + buttonwidth + 1) + "px";
		}
	} else {
		while(parseInt(btns[btns.length-1].style.left) > 667) {
			temp = btns[btns.length-1];
			for(var i=btns.length-1;i>=0;i--) {
				btns[i] = btns[i-1];
			}
			btns[0] = temp;
			btns[0].style.left = (parseInt(btns[1].style.left) - buttonwidth - 1) + "px";
		}
	}
}
	
function doScroll()
{
	if(pause == false) {
		for (var i = 0; i < btns.length; i++) {
			btns[i].style.left = (parseInt(btns[i].style.left) + direction) + "px";
		}
	toBottom();
	}
	setTimeout("doScroll();",20);
}
