/* CONSTANTS */
var DEFHEIGHT_FRONT		= 440;
var DEFHEIGHT_ABOUT		= 546;
var DEFHEIGHT_SERVICES	= 546;
var DEFHEIGHT_REFE		= 546;
var DEFHEIGHT_PRESS		= 546;
var DEFHEIGHT_CAREERS	= 546;
var DEFHEIGHT_CONTACT	= 546;

var SECTION_FRONT = 0;
var SECTION_ABOUT = 1;
var SECTION_SERVICES = 2;
var SECTION_REFE = 3;
var SECTION_PRESS = 4;
var SECTION_CAREERS = 5;
var SECTION_CONTACT = 6;

/* variables & prototypes */
var sectionName, defHeight;
var navItemArray = new Array();	// use as a stack
var timer = null;

if (![].pop) Array.prototype.pop = ArrayPop;
if (![].push) Array.prototype.push = ArrayPush;

function ArrayPop() {
	var tempItem = this[this.length-1];
	this.length--;
	return tempItem;
}
function ArrayPush() {
	this[this.length] = arguments[0];
	return this.length;
}

/* functions */
function initPage() {
	if (!document.getElementById) return;
	
	switch (sectionName) {
		case SECTION_FRONT:
			defHeight = DEFHEIGHT_FRONT;
			break;
		case SECTION_ABOUT:
			defHeight = DEFHEIGHT_ABOUT;
			break;
		case SECTION_SERVICES:
			defHeight = DEFHEIGHT_SERVICES;
			break;
		case SECTION_REFE:
			defHeight = DEFHEIGHT_REFE;
			break;
		case SECTION_PRESS:
			defHeight = DEFHEIGHT_PRESS;
			break;
		case SECTION_CAREERS:
			defHeight = DEFHEIGHT_CAREERS;
			break;
		case SECTION_CONTACT:
			defHeight = DEFHEIGHT_CONTACT;
			break;
	}
	return;
	
	var height = 0;
	var oPage = document.getElementById("pagecontainer");
	var oMiddle = document.getElementById("middle");
	var oText = document.getElementById("contenttext");
	var oPic = (document.getElementById("theme_pic_front")) ? document.getElementById("theme_pic_front") : document.getElementById("theme_pic");
	
	if (oText && oPic) {	// all subpages have content text and an image
		height = oText.offsetHeight + oPic.offsetHeight;
		if (height > defHeight) {	// we need to increase the page height
			oMiddle.style.height = height + "px";
		} else {	// default to the sub page's default height
			oMiddle.style.height = defHeight + "px";
		}
	} else {	// this is for the front page
		oMiddle.style.height = defHeight + "px";
	}
	
	// make the page visible after the height has been set correctly
	oPage.style.visibility = "visible";
}

function mouseOver(nr) {
	var oNormal = document.getElementById("navitem" + nr);
	var oRollover = document.getElementById("navitem" + nr + "_on");
	
	clearSelected();
	oNormal.style.visibility = "hidden";
	oRollover.style.visibility = "visible";
	navItemArray.push(nr);
}

function mouseOut(nr) {
	setTimeout("__mouseOut("+(nr)+")", 200);
}

function __mouseOut(nr) {
	var oNormal = document.getElementById("navitem" + nr);
	var oRollover = document.getElementById("navitem" + nr + "_on");
	
	oNormal.style.visibility = "visible";
	oRollover.style.visibility = "hidden";
}

function clearSelected() {
	var nr;

	while (navItemArray.length > 0) {
		nr = navItemArray.pop();
		__mouseOut(nr);
	}
}

function changeBgColor(el, on) {
	if (el) {
		el.className = (on) ? "selected" : "";
	}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
