function getObjStyle(refObjName)
{
	if (is_domcom)
		return document.getElementById(refObjName).style;
	else if (is_ie4)
		return document.all[refObjName].style;
}




// Copyright 2001-2003 Villario, villario@yahoo.com

var agt=navigator.userAgent.toLowerCase();
var is_major = parseInt(navigator.appVersion);
var is_minor = parseFloat(navigator.appVersion);
var is_nav  = ((agt.indexOf('mozilla')!=-1) && (agt.indexOf('spoofer')==-1) && (agt.indexOf('compatible') == -1) && (agt.indexOf('opera')==-1) && (agt.indexOf('webtv')==-1));
var is_nav2 = (is_nav && (is_major == 2));
var is_nav3 = (is_nav && (is_major == 3));
var is_badnav4 = (is_nav && (parseFloat(navigator.appVersion) == 4.02));
var is_oldnav4 = (is_nav && (parseFloat(navigator.appVersion) < 4.06));
var is_nav4 = (is_nav && (is_major == 4));
var is_nav4up = (is_nav && (is_major >= 4));
var is_nav6 = (is_nav && (is_major == 5));
var is_nav6up = (is_nav && (is_major >= 5));
var is_ie   = (agt.indexOf("msie") != -1);
var is_ie3  = (is_ie && (is_major < 4));
var is_ie4  = (is_ie && (is_major == 4) && (agt.indexOf("msie 5.0")==-1));
var is_ie4up  = (is_ie  && (is_major >= 4));
var is_ie5  = (is_ie && (is_major == 4) && (agt.indexOf("msie 5.0")!=-1));
var is_ie5up  = (is_ie && !is_ie3 && !is_ie4);
var is_aol   = (agt.indexOf("aol") != -1);
var is_aol3  = (is_aol && is_ie3);
var is_aol4  = (is_aol && is_ie4);
var is_aol5up  = (is_aol && is_ie5up);
var is_opera = (agt.indexOf("opera") != -1);
var is_opera4 = (is_opera && (is_major == 4));
var is_opera5 = (is_opera && (is_major == 5));
var is_opera5up = (is_opera && (is_major >= 5));
var is_webtv = (agt.indexOf("webtv") != -1);
var is_domcom = ((is_nav6up)||(is_ie5up)||(is_opera5up))
var is_mac    = (agt.indexOf("mac")!=-1);
var is_mac68k = (is_mac && ((agt.indexOf("68k")!=-1) || (agt.indexOf("68000")!=-1)));
var is_macppc = (is_mac && ((agt.indexOf("ppc")!=-1) || (agt.indexOf("powerpc")!=-1)));
var dhtmlnav=0;
var dhtmlBrowser=0;
if ((is_nav4up)||(is_ie4up)) dhtmlBrowser=1;

var table_template_front_array1 = new Array();
var table_template_front_array2 = new Array();
var table_template_end_array = new Array();
var row_template_front_array = new Array();
var parent_layer_array = new Array();
var child_layer_array = new Array();
var last_button_name = "";
var last_parent_layer = "";
var last_child_layer = "";
var last_image_name = "";
var image_pointer = "";
var TimerID = "";
var TimerIDLink = "";
var table_width = 0; // Changes the width of all menu tables. Set to widest menu.
var IsLink = "NO";
var PrevLayer = "NO";
var WaitLink = 0;
var LinkLayer = "";
var TimeLinkOut = 300;
var TimeLayerOut = 300;

if (document.images) {
    var arrow = new Image();
    var blank = new Image();
    arrow.src = "menu_script/arrow.gif";
    blank.src = "../../img/bases/spacer.gif";
}

function getINNERWIDTH()
{
	var pageWIDTH=null;
	if(is_nav4 || is_domcom)
		pageWIDTH=window.innerWidth;         //NN
	else if(is_ie4up)
		pageWIDTH=document.body.clientWidth; //IE
	return pageWIDTH;
}
  
function getINNERHEIGHT()
{
	var pageHEIGHT=null;
	if(is_nav4 || is_domcom)
		pageHEIGHT=window.innerHeight;         //NN
	else if(is_ie4up)
		pageHEIGHT=document.body.clientHeight; //IE
	return pageHEIGHT;
}
  
function Layer(name, visibility, zindex, table_template, left, top) {
    this.name = name;
    this.left = left;
    this.top = top;
    this.width = table_width;
    this.visibility = visibility;
    this.zindex = zindex;
    this.table_template = table_template;
    this.ar = ar;
    this.fl = fl;

    if (this.table_template == 1) {
        this.left = this.left + this.width - 70;
    }

    if ((is_domcom)||(is_ie4)) {  
      if (is_mac) { //changed the navigator.appVersion.indexOf("Macintosh") to is_mac
            this.top += 7;
            this.left += 2;
        }
        this.layer_content = '<div id="' + this.name + '" style="position: absolute; left: ' + this.left + '; top: ' + this.top + '; width: ' + this.width + '; visibility: ' + (this.visibility ? 'visible' : 'hidden') + '; z-index: ' + this.zindex + ';">';
    } else if (is_nav4) { 
        this.layer_content = '<layer name="' + this.name + '" left=' + this.left + ' top=' + this.top + ' width=' + this.width + ' visibility=' + (this.visibility ? '"show"' : '"hide"') + ' z-index=' + this.zindex + '>';
    }
	   this.layer_content += table_template_front_array1[this.table_template];
	   this.layer_content += name
	   this.layer_content += table_template_front_array2[this.table_template];
		if (this.table_template == 0) { 
			parent_layer_array[parent_layer_array.length] = this.name;
		} else {
		child_layer_array[child_layer_array.length] = this.name;
	    }
}

function ar(row_template, row_content) {  
    this.layer_content += row_template_front_array[row_template] + row_content + row_end;
}

function fl() {  
    this.layer_content += table_template_end_array[this.table_template];
    if ((is_domcom)||(is_ie4)) {
      this.layer_content += '</div>'; 
    } else if (is_nav4) {
        this.layer_content += '</layer>';
    } document.write(this.layer_content);
}

function define_table(tw) {
    table_template_front_array1[0] = '<table cellspacing="0" cellpadding="0" border="0" bgcolor="#000000" onmouseover="TableOver(\'';
    table_template_front_array2[0] = '\');" TableOut();">';
    table_template_end_array[0] = '</table>';
    row_template_front_array[0] = '<tr><td nowrap height="22">';

    table_template_front_array1[1] = '<table cellspacing="0" cellpadding="0" border="0" bgcolor="#f050f0" onmouseover="TableOver(\'';
    table_template_front_array2[1] = '\');" TableOut();">';
    table_template_end_array[1] = '</table>';
    row_template_front_array[1] = '<tr><td nowrap height="18">';

    row_end = '</tr>';
}

define_table(table_width);

function TableOut(){
	clearTimeout(TimerID);
    TimerID = setTimeout("ShowLayers('None')", TimeLayerOut);
}

function TableOver(ActiveLayer){
	clearTimeout(TimerID);
	if(ActiveLayer == LinkLayer){
		clearTimeout(TimerIDLink);
		WaitLink = 0;
	}
	ShowLayers(ActiveLayer);
}

function ResetWaitLink(ActiveLayer){
	WaitLink = 0;
	clearTimeout(TimerIDLink);
	ShowLayers(ActiveLayer);
}

function LinkOut(ActiveLayer){
	IsLink = "NO";
	WaitLink = 1;
    	TimerIDLink = setTimeout("ResetWaitLink('" + ActiveLayer + "')", TimeLinkOut);
	TableOut();
}

function LinkOver(ActiveLayer){
	clearTimeout(TimerID);
	clearTimeout(TimerIDLink);
	WaitLink = 0;
	LinkLayer = ActiveLayer;
	IsLink = ActiveLayer;
	ShowLayers(ActiveLayer);
}

function ShowLayers(ActiveLayer){
	
	if (IsLink != "NO") ActiveLayer = IsLink;

	if (PrevLayer != ActiveLayer && WaitLink == 0){
	
		for(i=0; i<menuLayers.length;i++){
			if (is_nav4) {
				document.layers[menuLayers[i].name].visibility='hide';
			} else if (is_ie4) {
				document.all[menuLayers[i].name].style.visibility='hidden';
			} else if (is_domcom) {
				//if (document.getElementById(menuLayers[i].name) != null)
					document.getElementById(menuLayers[i].name).style.visibility='hidden';
			}


			if (menuLayers[i].name == ActiveLayer){
				if (is_nav4) {
					document.layers[menuLayers[i].name].visibility='show';
				} else if (is_ie4) {
					document.all[menuLayers[i].name].style.visibility='visible';
				} else if (is_domcom) {
					document.getElementById(menuLayers[i].name).style.visibility='visible';
				}
			}
		}
		PrevLayer = ActiveLayer;
	}
}





function findPosX(obj)
{
	var curleft = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curleft += obj.offsetLeft
			obj = obj.offsetParent;
		}
	}
	else if (obj.x)
		curleft += obj.x;
	return curleft;
}

function findObjW(obj)
{
	var curleft = 0;
	if (obj.offsetParent)
		return obj.offsetWidth;
	else if (obj.width)
		return obj.width;
}

function findPosY(obj)
{
	var curtop = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curtop += obj.offsetTop;
			obj = obj.offsetParent;
		}
	}
	else if (obj.y)
		curtop += obj.y;
	return curtop;
}

function findObjH(obj)
{
	if (obj.offsetParent)
		return obj.offsetHeight;
	else if (obj.width)
		return obj.height;
}

previousTop = 0;

function initialiseLayerPositionsRelativelyTo(refObjName)
{
	if (is_ie4)
		refObj = document.all[refObjName];
	else if (is_domcom)
		refObj = document.getElementById(refObjName);
	else if (is_nav4)
		refObj = document.layers[refObjName];
	for (i=0; i<menuLayers.length; i++)
	{
		if (is_ie4)
			layerObj = document.all[menuLayers[i].name].style;
		else if (is_domcom)
			layerObj = document.getElementById(menuLayers[i].name).style;
		else if (is_nav4)
			layerObj = document.layers[menuLayers[i].name];
		layerObj.left = findPosX(refObj)+findObjW(refObj)+1;
		currentTop = layerObj.top;
		if (currentTop.indexOf("px") > -1)
			currentTop = currentTop.substring(0, currentTop.indexOf("px"));
		layerObj.top = parseInt(currentTop) - previousTop + findPosY(refObj);
	}
	previousTop = findPosY(refObj);
}

function initialiseLayerPositionsRelativelyToH(refObjName)
{
	if (is_ie4)
		refObj = document.all[refObjName];
	else if (is_domcom)
		refObj = document.getElementById(refObjName);
	else if (is_nav4)
		refObj = document.layers[refObjName];
	for (i=0; i<menuLayers.length; i++)
	{
		if (is_ie4)
		{
			layerObj = document.all[menuLayers[i].name].style;
			topLink = document.all[menuLayers[i].name + 'link'];
		}
		else if (is_domcom)
		{
			layerObj = document.getElementById(menuLayers[i].name).style;
			topLink = document.getElementById(menuLayers[i].name + 'link');
		}
		else if (is_nav4)
		{
			layerObj = document.layers[menuLayers[i].name];
			topLink = document.layers[menuLayers[i].name + 'link'];
		}
		layerObj.top = findPosY(refObj)+findObjH(refObj)+1;
		currentTop = layerObj.top;
		if (currentTop.indexOf("px") > -1)
			currentTop = currentTop.substring(0, currentTop.indexOf("px"));
		layerObj.left = findPosX(topLink);
	}
	previousTop = findPosY(refObj);
}