// this code copyright 2003 Eric Hwang,
// and cannot be reused without permission.

aboutImg_on = new Image();
aboutImg_on.src = "images/main_left_about_on.gif";
aboutImg_off = new Image();
aboutImg_off.src = "images/main_left_about_off.gif";

contactImg_on = new Image();
contactImg_on.src = "images/main_left_contact_on.gif";
contactImg_off = new Image();
contactImg_off.src = "images/main_left_contact_off.gif";

kraftImg_on = new Image();
kraftImg_on.src = "images/square_kraft_sm_over.gif";
kraftImg_off = new Image();
kraftImg_off.src = "images/square_kraft_sm_off.gif";

werkImg_on = new Image();
werkImg_on.src = "images/square_werk_sm_over.gif";
werkImg_off = new Image();
werkImg_off.src = "images/square_werk_sm_off.gif";

historyImg_on = new Image();
historyImg_on.src = "images/square_history_sm_over.gif";
historyImg_off = new Image();
historyImg_off.src = "images/square_history_sm_off.gif";

window.onerror=null;
function rollOn(imgName) {
	if(document.images) {
	    imgOn = eval(imgName + '_on.src');
	    document[imgName].src = imgOn;
	}
}

function rollOff(imgName) {
	if(document.images) {
	    imgOff = eval(imgName + '_off.src');
	    document[imgName].src = imgOff;
	}
}

var currentOpen = null;
var toBeOpened = null;
var inTransition = false;

function scrollObject(divName, objName, width, height) {
	this.name = divName;
	this.objectName = objName;
	this.clipWidth = 0;
	this.sliding = false;
	this.width = width;
	this.height = height;
}

var contactScroll = new scrollObject('contactDiv', 'contactScroll', 301, 145);
var aboutScroll = new scrollObject('aboutDiv', 'aboutScroll', 301, 145);
var scrolls = new Array(contactScroll, aboutScroll);

function getDiv(divName) {
	var layerRef = null;
	if(document.getElementById) layerRef = "document.getElementById('" + divName + "')";
	else if(document.all) layerRef = "document.all." + divName;
	else if(dovument.layers) layerRef = "document.layers." + divName;
	return eval(layerRef);
}

function getDivStyle(divName) {
	var layerRef = null;
	if(document.getElementById) layerRef = "document.getElementById('" + divName + "').style";
	else if(document.all) layerRef = "document.all." + divName + ".style";
	else if(document.layers) layerRef = "document.layers." + divName;
	return eval(layerRef);
}

function closeAllElse(object, delta) {
	for(i=0;  i < scrolls.length; i++) {
		if(scrolls[i].clipWidth != 0 && scrolls[i] != object) {
			doScrollIn(scrolls[i], delta);
		}
	}
	return true;
}

function doToggle(object, delta) {
	if(currentOpen == null) {
		if(object.clipWidth == 0) {
			doScrollOut(object, delta);
		} else {
			doScrollIn(object, delta);
		}
	} else {
		if(!inTransition) {
			inTransition = true;
			if(object.clipWidth == 0) {
				doScrollIn(currentOpen, delta, object);
			} else {
				doScrollIn(object, delta);
				currentOpen = null;
			}
		}			
	}
}

function doScrollOut(object, delta) {
	if(!object.sliding) {
		scrollOut(object, delta);
		object.sliding = true;
	}
}

function doScrollIn(object, delta, trigger) {

	if(!object.sliding) {

		scrollIn(object, delta, trigger);
		object.sliding = true;
	}
}

function scrollOut(object, delta) {
	getDivStyle(object.name).visibility = "visible";
	if(object.clipWidth < object.width - delta) {
		object.clipWidth += delta;
		clipTo(getDivStyle(object.name), 0, object.clipWidth, object.height, 0);
		setTimeout("scrollOut(" + object.objectName + ", " + delta + ")", 50);
	} else {
		object.clipWidth = object.width;
		object.sliding = false;
		clipTo(getDivStyle(object.name),0, object.width, object.height, 0);
		getDivStyle('comments').width ="256px";
		currentOpen = object;
		inTransition = false;
	}
}

function scrollIn(object, delta, trigger) {
	if(object.clipWidth > delta) {
		object.clipWidth -= delta;
		clipTo(getDivStyle(object.name), 0, object.clipWidth, object.height, 0);
		if(trigger)
			setTimeout("scrollIn(" + object.objectName + ", " + delta + ", " + trigger.objectName + ")", 50);
		else
			setTimeout("scrollIn(" + object.objectName + ", " + delta + ")", 50);
	} else {
		object.clipWidth = 0;
		object.sliding = false;
		clipTo(getDivStyle(object.name), 0, object.clipWidth, object.height, 0);
		if(trigger) {
			setTimeout("scrollOut(" + trigger.objectName + ", " +  delta + ")", 100);
		}
	}
}

function clipTo(object, top, right, bottom, left) {
	object.clip = "rect(" + top + "px " + right + "px " + bottom + "px " + left + ")";
}

function openWin(url) {
	var newwin = window.open(url, 'kraftwerk');
	newwin.focus();
}
