var menus = new Array();
var initialized = new Array();
var active = new Array();
var currentactive = false;
var datefields = new Array();
var usepopups = true;
var objects = new Array();
var bgcolor_hover = "#B9C8DC";
var bgcolor = "#ffffff";
var menu_last;
var userAgent = navigator.userAgent.toLowerCase();
var is_opera  = (userAgent.indexOf('opera') != -1);
var is_saf    = ((userAgent.indexOf('applewebkit') != -1) || (navigator.vendor == "Apple Computer, Inc."));
var is_webtv  = (userAgent.indexOf('webtv') != -1);
var is_ie     = ((userAgent.indexOf('msie') != -1) && (!is_opera) && (!is_saf) && (!is_webtv));
var is_ie4    = ((is_ie) && (userAgent.indexOf("msie 4.") != -1));
var is_moz    = ((navigator.product == 'Gecko') && (!is_saf));
var is_kon    = (userAgent.indexOf('konqueror') != -1);
var is_ns     = ((userAgent.indexOf('compatible') == -1) && (userAgent.indexOf('mozilla') != -1) && (!is_opera) && (!is_webtv) && (!is_saf));
var is_ns4    = ((is_ns) && (parseInt(navigator.appVersion) == 4));
var DOMtype = '';
if (document.getElementById) { DOMtype = "std"; }
else if (document.all) { DOMtype = "ie4"; }
else if (document.layers) {	DOMtype = "ns4"; }

function init()
{
	MM_preloadImages('images/buy_button_rollover.png');
	if (is_webtv)
	{
		return true;
	}
	var imgs = null;
	switch (DOMtype)
	{
		case "std": imgs = document.getElementsByTagName("img"); break;
		case "ie4": imgs = document.all.tags("img");             break;
		default:    imgs = false;                                break;
	}
	if (imgs)
	{
		// set 'title' tags for image elements
		for (var i = 0; i < imgs.length; i++)
		{
			if (!imgs[i].title && imgs[i].alt != "")
			{
				imgs[i].title = imgs[i].alt;
			}
		}
	}
	if (usepopups && menus.length > 0)
	{
		for (i in menus)
		{
			initmenu(menus[i]);
		}
	}
	document.onclick = clearmenus;
	return true;
}
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_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];}
}
function menu(id, nowrite, datefield)
{
	if (usepopups)
	{
		if (document.getElementsByTagName)
		{
			var control = fetch_object(id);
			if (control)
			{			
				if (datefield)
				{
					datefields[id] = datefield;
				}
				menus[menus.length] = id;
				if (!nowrite)
				{
					document.write('<img src="' + IMGDIR_MISC + '/menu_open.gif" alt="" border="0" />');
				}
				return true;
			}
		}
	}
}
function fetch_object(idname, forcefetch)
{
	if (forcefetch || typeof(objects[idname]) == "undefined")
	{
		switch (DOMtype)
		{
			case "std":
			{
				objects[idname] = document.getElementById(idname);
			}
			break;

			case "ie4":
			{
				objects[idname] = document.all[idname];
			}
			break;

			case "ns4":
			{
				objects[idname] = document.layers[idname];
			}
			break;
		}
	}
	return objects[idname];
}
function getmenuid(id)
{
	var dotpos = id.indexOf(".");
	if (dotpos != -1)
	{
		return id.substr(0, dotpos);
	}
	else
	{
		return id;
	}
}
function initmenu(id)
{
	var menuid = getmenuid(id) + "_menu";
	var menuobj = fetch_object(menuid);
	
	if (document.getElementsByTagName && menuobj)
	{

		// do control object
		var controlobj = fetch_object(id);
		//vbmenu_hand_pointer(controlobj);
		controlobj.unselectable = true;
//		controlobj.onclick = vbmenu_eventhandler_click;
//		controlobj.onmouseover = vbmenu_eventhandler_mouseover;
		controlobj.onmouseover = eventhandler_mouseover;
		controlobj.onmouseout = eventhandler_mouseout;
		
		// don't initialize the same popup menu twice
		if (typeof(initialized[menuid]) != "undefined")
		{
			return;
		}
		
		// do popup menu object
		var popupobj = fetch_object(menuid);
		popupobj.style.display = "none";
		popupobj.style.position = "absolute";
		popupobj.style.left = "0px";
		popupobj.style.top = "0px";
//		popupobj.onclick = e_by_gum;
		initialized[menuid] = true;
	}
}
function deselectlast()
{
	try	{
/*		menu_last.style.backgroundColor = bgcolor;*/
	} catch(e) {} 
}
function eventhandler_mouseover(e)
{
	e = do_an_e(e);
//	e = do_an_e(e);
	deselectlast();
/*	this.style.backgroundColor = bgcolor_hover;*/
	menu_last=this;
	openmenu(this);
}
function eventhandler_mouseout(e)
{
//	this.style.backgroundColor = bgcolor_hover;

//	closemenu(this);
}
function do_an_e(eventobj)
{
	if (!eventobj || is_ie)
	{
		window.event.returnValue = false;
		window.event.cancelBubble = true;
		return window.event;
	}
	else
	{
		eventobj.stopPropagation();
		eventobj.preventDefault();
		return eventobj;
	}
}
function openmenu(elm)
{
	var openmenu = currentactive;
	
	// REMOVED BY H
	closemenus();
	if (openmenu == elm.id && 0)
	{
		// clicked element was the control for the currently open menu - exit
		return false;
	}
	
	// get the id of the menu to be opened
	var menuid = getmenuid(elm.id) + "_menu";	
	var menuobj = fetch_object(menuid);
	var force_right_slide = false;

	if (typeof(datefields[elm.id]) != "undefined")
	{
		force_right_slide = true;
		fetch_object(elm.id + "_output").innerHTML = fetch_object(datefields[elm.id]).value;
	}
	else
	{
		force_right_slide = false
	}
	
	active[elm.id] = true;
	currentactive = elm.id;
	
	// get menu position
		
	var toppx = postop(elm) + elm.offsetHeight + 7;
//	alert();
//	var leftpx = posleft(elm) + elm.offsetWidth - 15;
	var leftpx = posleft(elm);

	

	if (is_ie)
	{
		leftpx += -2;
		toppx += -8;
	}
	
	// set menu position
	menuobj.style.left = leftpx + "px";
	menuobj.style.top = toppx + "px";
	
	menuobj.style.display = "";
	return false;
}

function postop(elm)
{
	var top = elm.offsetTop;
	while((elm = elm.offsetParent) != null)
	{
		top += elm.offsetTop;
	}
	return top;
}
function posleft(elm)
{
	var left = elm.offsetLeft;
	while((elm = elm.offsetParent) != null)
	{
		left += elm.offsetLeft;
	}
	return left;
}
function clearmenus()
{
	deselectlast();
	closemenus();
}
function closemenus()
{
	if (currentactive)
	{
		for (key in active)
		{
			fetch_object(getmenuid(key) + "_menu").style.display = "none";
			active[key] = false;
		}
	}
	currentactive = false;
	
	if (is_ie)
	{
		selects = document.getElementsByTagName("select");
		for (var i = 0; i < selects.length; i++)
		{
			selects[i].style.visibility = "visible";
		}
	}
}

