var menutimeout_value = 500;  // milli-seconds
var menu_timeout_value = 0;
var curZIndex = 100000;

var mouseovertimeout;
var currentmenu = 0;

function position_overlay_bar() {
	el = $("photo_div");
	el2 = $("photo_overlay");
	
	el2.style.top = (el.offsetHeight - el2.offsetHeight) + "px";
	el2.style.visibility = 'visible';
}


function position_subnavbar(id) {
	if ((parentobj = $('nav' + id)) != undefined) {
		menubar = $('subnav');
		menubar_width = menubar.offsetWidth;
		
		parentobjLeft = getpos(parentobj.id, 'navDiv');
		parentobjMiddle = parentobjLeft[0] + Math.round(parentobj.offsetWidth / 2);
		menubar_left = parentobjMiddle - Math.round(menubar_width / 2) + 10;
		
		if (menubar_left + menubar_width > 956) menubar_left = 956 - menubar_width;
		else if (menubar_left < 5) menubar_left = 5;
		
		menubar.style.left = menubar_left + "px";
	}
}

function mmover(id) {
	//$(id).className = "menu_hover";
	return;
}

function mmout(id) {
	//$(id).className = "menu";
	return;

}
function mout(id) {
	if ($("submenu").style.visibility == "hidden") mout2(id);
	else mouseovertimeout = setTimeout("mout2('" + id + "')", menu_timeout_value);
}

function mout2(id) {
	$(id).className = "submenu";
	nosubmenus();
}

function mover(id, menu, obj) {
	if (mouseovertimeout) {
		clearTimeout(mouseovertimeout);
		if (currentmenu != id) mout2(currentmenu);
	}

	obj.className = "submenu_hover";

	submenus(menu, obj);

	currentmenu = id;
}

function submenus(menu, obj) {
	nosubmenus();
	blur_dropdowns();

	curZIndex++;
	$("submenuIframe").style.zIndex = curZIndex;
	curZIndex++;
	$("submenu").style.zIndex = curZIndex;

	p = getpos(obj.id);
	$("submenuIframe").style.left = p[0] + "px";
	$("submenuIframe").style.top = p[1] + (submenu[menu] == undefined || submenu[menu].length == 0 ? -1 : 0) + obj.offsetHeight + "px";
	$("submenu").style.left = p[0] + "px";
	$("submenu").style.top = p[1] + (submenu[menu] == undefined || submenu[menu].length == 0 ? -1 : 0) + obj.offsetHeight + "px";

	submenu_width = 0;
	
	html = "";
	
	menu_timeout_value = 0;
	
	if (submenu[menu] != undefined) {
		links = "";
		menuitems = new Array();

		for (i = 0; i < submenu[menu].length; i++) {
			if (i == 0) {
				links += "<tr>";
				links += "<td class=\"menuitems_left\"></td>";
				links += "<td class=\"menuitems_off\" style=\"padding:0px\"><img src=\"/library/33/images/dummy.gif\" width=\"1\" height=\"1\" border=\"0\"></td>";
				links += "<td class=\"menuitems_right\"></td>";
				links += "</tr>";
			}
			links += "<tr>";
			links += "<td class=\"menuitems_left\"></td>";
			links += "<td class=\"menuitems_off\" onClick=\"location.href='" + submenu[menu][i][2] + "'\" onMouseover=\"this.className='menuitems_on'\" onMouseout=\"this.className='menuitems_off'\" id=\"menu_item_" + i + "\"><a href=\"" + submenu[menu][i][2] + "\">" + submenu[menu][i][1] +"</a></td>";
			links += "<td class=\"menuitems_right\"></td>";
			links += "</tr>";
			
			if (i < submenu[menu].length - 1) {
				links += "<tr>";
				links += "<td class=\"menuitems_left\"></td>";
				links += "<td class=\"menuitems_sep\" valign=\"middle\" align=\"center\"><div id=\"menu_sep_" + i + "\" class=\"menuitems_sep_bg\"><img src=\"/library/33/images/dummy.gif\" width=\"1\" height=\"3\" border=\"0\"></td>";
				links += "<td class=\"menuitems_right\"></td>";
				links += "</tr>";
			}
			
		}
		
		if (links != "") {
			links += "<tr><td colspan=\"3\"><table cellpadding=\"0\" cellspacing=\"0\" border=\"0\" width=\"100%\">";
			links += "<td width=\"50%\" class=\"menuitems_bottom_left\"></td>";
			links += "<td width=\"50%\" class=\"menuitems_bottom_right\"></td>";
			links += "</table></td></tr>";
			
			$("submenu").innerHTML = '<table cellpadding="0" cellspacing="0" border="0">' + links + '</table>';
	
			submenu_width = obj.offsetWidth;
	
			for (i = 0; i < submenu[menu].length; i++) {
				if ($("menu_item_" + i) != undefined) $("menu_item_" + i).style.width = (submenu_width - 34)  + "px";
				if ($("menu_sep_" + i) != undefined) $("menu_sep_" + i).style.width = (submenu_width - 28) + "px";
			}
	
			html += $("submenu").innerHTML;
			
			menu_timeout_value = menutimeout_value;
		}

		$("submenu").innerHTML = html;
		
		submenu_height = $("submenu").offsetHeight;
		$("submenuIframe").style.width = submenu_width + "px";
		$("submenuIframe").style.height = submenu_height + "px";
		
		$("submenuIframe").style.visibility = "visible";
		$("submenu").style.visibility = "visible";
	}
	
}

function nosubmenus() {
	if ($("submenu") && $("submenu").style.visibility == "visible") {
		$("submenuIframe").style.visibility = "hidden";
		$("submenu").style.visibility = "hidden";
		$("submenuIframe").style.left = -1000 + "px";
		$("submenu").style.left = -1000 + "px";
	}
}

function blur_dropdowns() {
	els = document.getElementsByTagName("select");
	for (i = 0; i < els.length; i++) {
		els[i].blur();
	}
}


// prototype $() function to replace document.getElementById()
function $() {
	var elements = new Array();

	for (var i = 0; i < arguments.length; i++) {
		var element = arguments[i];
		if (typeof element == 'string')
		element = document.getElementById(element);

		if (arguments.length == 1)
		return element;

		elements.push(element);
	}

	return elements;
}

function getRealLeft(el){
	xPos = $(el).offsetLeft;
	tempEl = $(el).offsetParent;
	if (arguments.length > 1 && arguments[1] != null && tempEl.id == arguments[1]) return xPos;
	while (tempEl != null) {
		xPos += tempEl.offsetLeft;
		tempEl = tempEl.offsetParent;
		if (arguments.length > 1 && arguments[1] != null && tempEl.id == arguments[1]) return xPos;
	}
	return xPos;
}

function getRealTop(el){
	yPos = $(el).offsetTop;
	tempEl = $(el).offsetParent;
	if (arguments.length > 1 && arguments[1] != null && tempEl.id == arguments[1]) return xPos;
	while (tempEl != null) {
		yPos += tempEl.offsetTop;
		tempEl = tempEl.offsetParent;
		if (arguments.length > 1 && arguments[1] != null && tempEl.id == arguments[1]) return yPos;
	}
	return yPos;
}

function getpos(isID){
	trueX = getRealLeft(isID, (arguments.length > 1 ? arguments[1] : null));
	trueY = getRealTop(isID, (arguments.length > 1 ? arguments[1] : null));
	return Array(trueX, trueY);
}

function trim(str) {
	return str.replace(/^\s+|\s+$/g, "");
}

Array.prototype.inArray = function(value) {
	for (i = 0; i < this.length; i++) {
			if (this[i] == value) return true;
	}
	return false;
};


