/* this part is for the swap divs on the venue pages */

function swapDivs(arg) {

	// hide all the divs
	
	document.getElementById("panel1").style.display = "none";
	document.getElementById("panel2").style.display = "none";
	document.getElementById("panel3").style.display = "none";
	document.getElementById("panel4").style.display = "none";

	var objName="panel"+arg;
	document.getElementById(objName).style.display = "block";
}

function iframeLoaded() {

	// we have to do this so that the map will properly load in the iframe
	// apparently theres a problem in IE with this

	document.getElementById("panel4").style.visibility = "visible";
	document.getElementById("panel4").style.display = "none";

}




/* now the slider stuff */

var timerlen = 5;
var slideAniLen = 300;

var timerID = new Array();
var startTime = new Array();
var obj = new Array();
var endHeight = new Array();
var moving = new Array();
var dir = new Array();
var state  = new Array();

function toggleDiv(objName) {
	
	if (state[objName]=="expanded") {
		slideup(objName)
	} else {
		slidedown(objName)
	}
}

function slidedown(objName) {
	if (moving[objName]) {
		return;
	}
	if (document.getElementById(objName).style.display == "block") {
		return;// cannot slide down something that is already visible
	}
	moving[objName] = true;
	dir[objName] = "down";
	startslide(objName);
}


function slideup(objName) {

	if (moving[objName]) {
		return;
	}
	if (document.getElementById(objName).style.display == "none") {
		return;// cannot slide up something that is already hidden
	}

	moving[objName] = true;
	dir[objName] = "up";
	startslide(objName);
}


function startslide(objName) {

	obj[objName] = document.getElementById(objName);

	endHeight[objName] = parseInt(obj[objName].style.height);
	startTime[objName] = (new Date()).getTime();

	if (dir[objName] == "down") {
		obj[objName].style.height = "1px";
	}
	obj[objName].style.display = "block";

	timerID[objName] = setInterval('slidetick(\'' + objName + '\');',timerlen);
}


function slidetick(objName) {
	var elapsed = (new Date()).getTime()-startTime[objName];

	if (elapsed>slideAniLen) {
		endSlide(objName);
	} else {
		var d = Math.round(elapsed/slideAniLen*endHeight[objName]);
		if (dir[objName] == "up") {
			d = endHeight[objName]-d;
		}

		obj[objName].style.height = d+"px";
	}
	return;
}


function endSlide(objName) {
	clearInterval(timerID[objName]);

	if (dir[objName] == "up") {
		obj[objName].style.display = "none";
		state[objName]="collapsed";
	} else {
		state[objName]="expanded";
	}


	obj[objName].style.height = endHeight[objName]+"px";

	delete (moving[objName]);
	delete (timerID[objName]);
	delete (startTime[objName]);
	delete (endHeight[objName]);
	delete (obj[objName]);
	delete (dir[objName]);

	return;
}
