var intervalId;
var intMoveInterval     = 10;
var intMoveSpeed        = 10;
var clip = 0;
var currentlyOpen = null;
var objCurrent;
var nextInLine = null;
var arrayQueryString

var img_services		= new Image();
var img_services_on		= new Image();
var img_software 		= new Image();
var img_software_on 	= new Image();
var img_contact 		= new Image();
var img_contact_on 		= new Image();
var img_client 			= new Image();
var img_client_on 		= new Image();

img_services.src	= "images/services.gif";
img_services_on.src	= "images/services_on.gif";
img_software.src	= "images/software.gif";
img_software_on.src	= "images/software_on.gif";
img_contact.src		= "images/contact.gif";
img_contact_on.src	= "images/contact_on.gif";
img_client.src		= "images/client.gif";
img_client_on.src	= "images/client_on.gif";

function close() {
	closeWithInterval(intMoveInterval);
}
function closeCompleteEvent() {
    clearInterval(intervalId);
	imageOff(currentlyOpen);
	currentlyOpen = null;
	objCurrent = null;
	if (nextInLine != null) {
		imageOn(nextInLine);
		objCurrent = document.getElementById(nextInLine + "_body");
        intervalId = setInterval("open()",intMoveSpeed);
		currentlyOpen = nextInLine;
		nextInLine = null;
	}
}
function closeFast() {
	closeWithInterval(intMoveInterval * 2);
}
function closeWithInterval(interval) {
	clip = clip - interval;
	if (clip < 0) {
		clip = 0;
	}
	objCurrent.style.clip = "rect(0px auto " + clip + "px 0px)";
	if (clip == 0) {
		closeCompleteEvent();
	}
}
function getParameter(name){

	if (name == null) {
		return null;
	}

	var retVal = null;

	for (var i=0; i < arrayQueryString.length; i++) {
		if (arrayQueryString[i].indexOf(name + "=") == 0) {
			retVal = arrayQueryString[i].substr(name.length + 1,arrayQueryString[i].length);
			break;
		}
	}
	return retVal;
}
function initQueryString() {
	var queryString = window.location.search;
	if (queryString.substr(0,1) == "?") {
		queryString = queryString.substr(1,queryString.length);
	}
	arrayQueryString = queryString.split("&");
}
function init() {
	initQueryString();

	var page = getParameter('page');
	if (page == "services" || page == "software" || page == "contact") {
		toggle(page);
	}
}
function imageOff(layer) {
	var objImage = document.getElementById("image_" + layer);
	objImage.src = eval("img_" + layer + ".src");
}

function imageOn(layer) {
	var objImage = document.getElementById("image_" + layer);
	objImage.src = eval("img_" + layer + "_on.src");
}
function open() {
	clip = clip + intMoveInterval;
	objCurrent.style.clip = "rect(0px auto " + clip + "px 0px)";
	if (clip >= objCurrent.offsetHeight) {
		clip = objCurrent.offsetHeight;
        clearInterval(intervalId);
	}
}
function toggle(layer) {
	if (currentlyOpen != null && currentlyOpen != layer) {
        clearInterval(intervalId);
        intervalId = setInterval("closeFast()",intMoveSpeed);
		nextInLine = layer;
		return;
	} else if (currentlyOpen != null) {
        clearInterval(intervalId);
        intervalId = setInterval("close()",intMoveSpeed);
	} else {
		nextInLine = null;
		imageOn(layer);
		objCurrent = document.getElementById(layer + "_body");
        intervalId = setInterval("open()",intMoveSpeed);
		currentlyOpen = layer;
	}
}