//Add fading styles only requried through Javascript
document.write('<style type="text/css">.fading_content { display:none; position:absolute; } #fadingHolder { background:#FFFFFF; } .leftBox { float:none; } .rightBox { float:none; margin-left:429px; } .restaurant_padding { display:none; } #animal_image { display:none; }</style>');

var msec=800;
var appearingDiv;
var windowHeight;
var thisBrowser = navigator.appVersion;
var timeOuts = new Array();
var timeOutIndex = 0;

function displayDiv(hiddenDiv)
{
  changeOpac(0, hiddenDiv);
  changeOpac(0, 'backingDiv');
  var iereg = new RegExp('MSIE [^7-9]', 'g');
  if(iereg.exec(thisBrowser))
  {
	document.getElementById('backingDiv').style.height = document.body.offsetHeight + "px";
  }
  else
  {
  	document.getElementById('backingDiv').style.position = "fixed";
  }
  appearingDiv = hiddenDiv;
  opacity(hiddenDiv,0,99,msec);
  opacity('backingDiv',0,33,msec);
  setDisplay(hiddenDiv,'block');
  setDisplay('backingDiv','block');
}

function resetTimeouts()
{
	for(i=0;i<timeOuts.length;i++)
	{
  		clearInterval(timeOuts[i].interval);
  	}
	timeOutIndex = 0;
}

function quickdisplayDiv(hiddenDiv)
{
  resetTimeouts()
  changeOpac(0, hiddenDiv);
  changeOpac(0, 'backingDiv');
  appearingDiv = hiddenDiv;
  opacity(hiddenDiv,0,99,msec);
  setDisplay(hiddenDiv,'block');
}


function layerClose(hiddenDiv)
{
  opacity('backingDiv',33,0, msec);
  opacity(appearingDiv,99,0, msec);
}

function setDisplay(objectID,state) 
{
	var obj = document.getElementById(objectID);
	obj.style.display = state;
}

function checkOpacity(myObject)
{
	if((myObject.thisstep > 0 && myObject.currentOpacity < myObject.opacEnd) || (myObject.thisstep < 0 && myObject.currentOpacity > myObject.opacEnd))
	{
		changeOpac(myObject.currentOpacity,myObject.id);
		myObject.currentOpacity += myObject.thisstep;
	}
	else
	{
		clearInterval(myObject.interval);
		changeOpac(myObject.opacEnd,myObject.id);
		if(myObject.opacEnd == 0)
		setDisplay(myObject.id,"none");
		if(document.getElementById('placeHolder'))
		{
			if(newHeight > document.getElementById('right_content').offsetHeight)
			document.getElementById('placeHolder').style.height = newHeight + 'px';
			else
			document.getElementById('placeHolder').style.height = document.getElementById('right_content').offsetHeight + 'px';
		}
	}
}

function fader(target, start, end, msec, thisIndex)
{
	this.opacStart = start;
	this.opacEnd = end;
	this.id = target;
	if(start < end)
	this.thisstep = 4;
	else
	this.thisstep = -4;
	this.currentOpacity = start;
	this.changeOpac = changeOpac;
	this.interval = setInterval("checkOpacity(timeOuts["+thisIndex+"])",Math.round(msec / 100));
}

function opacity(id, opacStart, opacEnd, msec) 
{
	timeOuts[timeOutIndex] = new fader(id, opacStart, opacEnd, msec, timeOutIndex);
	timeOutIndex++;
}

function changeOpac(opacity, id) {
	var object = document.getElementById(id).style;
	object.opacity = (opacity / 100);
	object.MozOpacity = (opacity / 100);
	object.KhtmlOpacity = (opacity / 100);
	object.filter = "alpha(opacity=" + opacity + ")";
}

function viewSection(thisitem)
{
	resetTimeouts();
	if(document.getElementById("right_content").style.display != "block")
	{
		document.getElementById("right_content").style.display = "block"
		changeOpac(0, 'right_content');
		opacity('right_content',0,100,msec);
	}
	if(thisitem.className.indexOf("active") < 0)
	{
		for(i=0;i<fadingLinks.childNodes.length;i++)
		{
			if(fadingLinks.childNodes[i].nodeName == "AREA")
			{
				var currentLI = fadingLinks.childNodes[i];
				currentLI.className = currentLI.className.replace("active", "");
			}
		}
		for(i=0;i<menu_items.childNodes.length;i++)
		{
			if(menu_items.childNodes[i].nodeName == "LI")
			{
				var currentLI = menu_items.childNodes[i];
				currentLI.className = currentLI.className.replace("currentPage", "");
				var currentLI = menu_items2.childNodes[i];
				currentLI.className = currentLI.className.replace("currentPage", "");
			}
		}
		if(thisitem.className.indexOf("active") <= 0 && thisitem.parentNode.nodeName != "DIV" && thisitem.parentNode.nodeName != "LI")
		{
			thisitem.className += "active";
		}
		if(thisitem.parentNode.className.indexOf("currentPage")<=0 && thisitem.parentNode.nodeName == "LI")
		{
			thisitem.parentNode.className = "currentPage";
		}
		var index = thisitem.id;
		if(index.indexOf("_b",0) == index.length-2  && thisitem.parentNode.nodeName == "LI")
		{
			index = index.substring(0,index.length-2);
			document.getElementById(index).parentNode.className = "currentPage";
		}
		index = index.substring(index.lastIndexOf('_')+1,index.length);
		var i = 1;
		while(document.getElementById('fadingcontent_'+i))
		{
			if(i != index)
			{
				var currentGolf = document.getElementById('fadingcontent_'+i);
				currentGolf.style.display = "none";
			}
			i++;
		}
		if(lastDiv != 'fadingcontent_'+index)
		{
			if(document.getElementById(lastDiv))
			{
				setDisplay(lastDiv,"block")
				opacity(lastDiv, 100, 0, msec);
			}
			if(document.getElementById('fadingcontent_'+index))
			{
				changeOpac(0, 'fadingcontent_'+index);
				setDisplay('fadingcontent_'+index,'block'); 
				newHeight = document.getElementById('fadingcontent_'+index).offsetHeight;
				if(newHeight < document.getElementById('right_content').offsetHeight)
				newHeight = document.getElementById('right_content').offsetHeight;
				if(document.getElementById(lastDiv))
				{
					oldHeight = document.getElementById(lastDiv).offsetHeight;
					if(oldHeight <= newHeight)
						document.getElementById('placeHolder').style.height = newHeight + "px";
				}
				else
					document.getElementById('placeHolder').style.height = newHeight + "px";
				opacity('fadingcontent_'+index,0,100,msec);
				lastDiv = 'fadingcontent_'+index;
			}
		}
		window.scrollTo(0,document.getElementById('fadingcontent_'+index).offsetTop);
	}
}