function GetFrameDocument (frameID, doc){	var frameDocument = null;	if (!doc)		doc = document;	//alert (frameID);	if (doc.getElementById && !(doc.all)) { // Firefox		if (doc.getElementById(frameID))			frameDocument = doc.getElementById(frameID).contentDocument;	}	else { // Internet Explorer 		if (doc.frames [frameID])			frameDocument = doc.frames [frameID].document;			}	//alert (frameDocument);	return frameDocument;}function FireOnClickEvent (btnObj)
{
	// support DOM
	if (document.createEvent) {
		var evt = document.createEvent("MouseEvents");
			evt.initMouseEvent ("click", true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
			btnObj.dispatchEvent(evt);
		}
	// support IE
	else if (document.createEventObject)
		btnObj.fireEvent('onclick');
}
function FireOnMouseOutEvent (btnObj)
{
	// support DOM
	if (document.createEvent) {
		var evt = document.createEvent("MouseEvents");
			evt.initMouseEvent ("mouseout", true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
			btnObj.dispatchEvent(evt);
		}
	// support IE
	else if (document.createEventObject)
		btnObj.fireEvent('onmouseout');
}
function FireOnMouseOverEvent (btnObj)
{
	// support DOM
	if (document.createEvent) {
		var evt = document.createEvent("MouseEvents");
			evt.initMouseEvent ("mouseover", true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
			btnObj.dispatchEvent(evt);
		}
	// support IE
	else if (document.createEventObject)
		btnObj.fireEvent('onmouseover');
}
function FireOnMouseUpEvent (btnObj)
{
	// support DOM
	if (document.createEvent) {
		var evt = document.createEvent("MouseEvents");
			evt.initMouseEvent ("mouseup", true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
			btnObj.dispatchEvent(evt);
		}
	// support IE
	else if (document.createEventObject)
		btnObj.fireEvent('onmouseup');
}
function FireOnMouseDownEvent (btnObj)
{
	// support DOM
	if (document.createEvent) {
		var evt = document.createEvent("MouseEvents");
			evt.initMouseEvent ("mousedown", true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
			btnObj.dispatchEvent(evt);
		}
	// support IE
	else if (document.createEventObject)
		btnObj.fireEvent('onmousedown');
}
function GetBrowserElementsByTagName (doc, tag)
{
	var collection;
	if (doc.getElementsByTagName)
		collection = doc.getElementsByTagName (tag);
	else if (doc.all) 	
		collection = doc.all.tags (tag);
	return collection;	
}

function GetBrowserParentWindow (doc)
{
	var parentWindow;
	if (doc.getElementById && !(doc.all)) // Firefox
		parentWindow = doc.defaultView;
	else
		parentWindow = doc.parentWindow;		
	return 	parentWindow;
}
var defaultWindowParam = "edge: Raised; center: Yes; help: No; resizable: Yes; status: No;"
function ShowModelessDialog (url, windowName, left, top, width, height)
{
	var retWin;
	if (window.showModelessDialog){//IE
		var windowParams =	"dialogHeight: " + height + "px; " +
							"dialogWidth: "  + width  + "px; " +
							"dialogTop: " + top + "px; " +
							"dialogLeft: " + left + "px; " + 
							defaultWindowParam;
		retWin = window.showModelessDialog	(url, windowName, windowParams);						
	}
	else { //degrade for non-IE
		var windowParams = "height=" + height + "," +
						   "width=" + width + "," +
						   "top=" + top + "," +
						   "left=" + left + "," +
						   "resizable=yes,status=no,modal=yes"
		retWin = window.open (url, windowName, windowParams);
		// center
		var wleft = (screen.width - width) / 2;
		var wtop = (screen.height - height) / 2;
		retWin.moveTo (wleft, wtop);		
	}
	retWin.focus ();
	return retWin;
}

function ShowModalDialog (url, windowName, left , top, width, height, windowParams, center)
{
	var retVal;
	if (window.showModalDialog){//IE
		if (windowParams == "")
			windowParams = defaultWindowParam;
		windowParams =	"dialogHeight: " + height + "px; " +
						"dialogWidth: "  + width  + "px; " +
						"dialogTop: " + top + "px; " +
						"dialogLeft: " + left + "px; " + 	
						windowParams;
		retVal = window.showModalDialog (url, windowName, windowParams);
	}
	else { //degrade for non-IE
		if (windowParams == "")
			windowParams = "toolbar=no,dependent=yes,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,dialog=yes";
		windowParams = 	"height=" + height + "," +
						"width=" + width + "," +
						"top=" + top + "," +
						"left=" + left + "," +
						windowParams + "modal=yes";
		retVal = window.open (url, windowName, windowParams);	
		if (center) {
			var wleft = (screen.width - width) / 2;
			var wtop = (screen.height - height) / 2;
			retVal.moveTo (wleft, wtop);
			retVal.focus ();
		}					
	}
	return retVal;
}

function ExecScript (win, script)
{
	if (win.execScript)
		win.execScript (script);
	else
		eval.call(win, script);
}
var defaultWindowParam = "edge: Raised; center: Yes; help: No; resizable: Yes; status: No;"function ShowModelessDialog (url, windowName, left, top, width, height){	var retWin;	if (window.showModelessDialog){//IE		var windowParams =	"dialogHeight: " + height + "px; " +							"dialogWidth: "  + width  + "px; " +							"dialogTop: " + top + "px; " +							"dialogLeft: " + left + "px; " + 							defaultWindowParam;		retWin = window.showModelessDialog	(url, windowName, windowParams);							}	else { //degrade for non-IE		left = (screen.width - width) / 2;		top = (screen.height - height) / 2;		var windowParams = "height=" + height + "," +						   "width=" + width + "," +						   "top=" + top + "," +						   "left=" + left + "," +						   "resizable=yes,status=no,modal=yes"		retWin = window.open (url, windowName, windowParams);			}	retWin.focus ();	return retWin;}function ShowModalDialog (url, windowName, left , top, width, height, windowParams, center){	var retVal;	if (window.showModalDialog){//IE		if (windowParams == "")			windowParams = defaultWindowParam;		windowParams =	"dialogHeight: " + height + "px; " +						"dialogWidth: "  + width  + "px; " +						"dialogTop: " + top + "px; " +						"dialogLeft: " + left + "px; " + 							windowParams;		retVal = window.showModalDialog (url, windowName, windowParams);	}	else { //degrade for non-IE		if (windowParams == "")			windowParams = "toolbar=no,dependent=yes,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,dialog=yes";		windowParams = 	"height=" + height + "," +						"width=" + width + "," +						"top=" + top + "," +						"left=" + left + "," +						windowParams + "modal=yes";		retVal = window.open (url, windowName, windowParams);			if (center) {			var wleft = (screen.width - width) / 2;			var wtop = (screen.height - height) / 2;			retVal.moveTo (wleft, wtop);			retVal.focus ();		}						}	return retVal;}
function ExecScript (win, script){	if (win.execScript)		win.execScript (script);	else		eval.call(win, script);}
function IsFireFoxBrowser ()
{
	return document.getElementById && !(document.all); // Firefox
}

// Raise Popup
var menuwidth='165px'; //default menu width
var menubgcolor='lightyellow'; //menu bgcolor
var disappeardelay=250; //menu disappear speed onMouseout (in miliseconds)
var hidemenu_onclick="yes"; //hide menu when user clicks within menu?
var ie4=document.all;
var ns6=document.getElementById&&!document.all;
var dropmenuobj = null;

//if (ie4||ns6)
//	document.write('<div id="dropmenudiv" style="visibility:hidden;width:'+menuwidth+';background-color:'+menubgcolor+'" onMouseover="clearhidemenu()" onMouseout="dynamichide(event)"><\/div>');

function getposOffset(what, offsettype)
{
	var totaloffset=(offsettype=="left")? what.offsetLeft : what.offsetTop;
	var parentEl=what.offsetParent;
	while (parentEl!=null){
		totaloffset=(offsettype=="left")? totaloffset+parentEl.offsetLeft : totaloffset+parentEl.offsetTop;
		parentEl=parentEl.offsetParent;
	}
	return totaloffset;
}
function showhide(obj, e, visible, hidden, menuwidth)
{
	if (ie4||ns6)
		dropmenuobj.style.left=dropmenuobj.style.top="-500px";
	if (menuwidth!=""){
		dropmenuobj.widthobj=dropmenuobj.style;
		dropmenuobj.widthobj.width=menuwidth;
	}
	if (e.type=="click" && obj.visibility==hidden || e.type=="mouseover")
		obj.visibility=visible;
	else if (e.type=="click")
		obj.visibility=hidden;
}

function iecompattest()
{
	return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body;
}

function clearbrowseredge(obj, whichedge)
{
	var edgeoffset=0;
	if (whichedge=="rightedge"){
		var windowedge=ie4 && !window.opera? iecompattest().scrollLeft+iecompattest().clientWidth-15 : window.pageXOffset+window.innerWidth-15
		dropmenuobj.contentmeasure=dropmenuobj.offsetWidth;
		if (windowedge-dropmenuobj.x < dropmenuobj.contentmeasure)
			edgeoffset=dropmenuobj.contentmeasure-obj.offsetWidth;
	}
	else{
		var topedge=ie4 && !window.opera? iecompattest().scrollTop : window.pageYOffset;
		var windowedge=ie4 && !window.opera? iecompattest().scrollTop+iecompattest().clientHeight-15 : window.pageYOffset+window.innerHeight-18;
		dropmenuobj.contentmeasure=dropmenuobj.offsetHeight;
		if (windowedge-dropmenuobj.y < dropmenuobj.contentmeasure){ //move up?
			edgeoffset=dropmenuobj.contentmeasure+obj.offsetHeight;
			if ((dropmenuobj.y-topedge)<dropmenuobj.contentmeasure) //up no good either?
				edgeoffset=dropmenuobj.y+obj.offsetHeight-topedge;
		}
	}
	return edgeoffset;
}

function populatemenu(what)
{
	if (ie4||ns6)
		dropmenuobj.innerHTML=what.join("");
}

function dropdownmenu(obj, e, menucontents, menuwidth)
{
	if (window.event)
		event.cancelBubble=true;
	else if (e.stopPropagation) 
		e.stopPropagation();
	clearhidemenu();
	dropmenuobj=document.getElementById? parent.document.getElementById("dropmenudiv") : parent.dropmenudiv;
	populatemenu(menucontents);
	if (ie4||ns6){
		showhide(dropmenuobj.style, e, "visible", "hidden", menuwidth);
		dropmenuobj.x=getposOffset(obj, "left");
		dropmenuobj.y=getposOffset(obj, "top");
		dropmenuobj.style.left=dropmenuobj.x-clearbrowseredge(obj, "rightedge")+"px";
		dropmenuobj.style.top=dropmenuobj.y-clearbrowseredge(obj, "bottomedge")+obj.offsetHeight+"px";
	}
	return clickreturnvalue();
}

function clickreturnvalue()
{
	if (ie4||ns6) 
		return false;
	else 
		return true;
}

function contains_ns6(a, b)
{
	while (b.parentNode)
		if ((b = b.parentNode) == a)
			return true;
	return false;
}

function dynamichide(e)
{
	if (ie4&&!dropmenuobj.contains(e.toElement))
		delayhidemenu();
	else if (ns6&&e.currentTarget!= e.relatedTarget&& !contains_ns6(e.currentTarget, e.relatedTarget))
		delayhidemenu();
}

function hidemenu(e)
{
	if (typeof dropmenuobj!="undefined"){
		if (ie4||ns6)
			dropmenuobj.style.visibility="hidden";
	}
}

function delayhidemenu()
{
	if (ie4||ns6)
		delayhide=setTimeout("hidemenu()",disappeardelay);
}

function clearhidemenu()
{
	if (typeof delayhide!="undefined")
		clearTimeout(delayhide);
}

//if (hidemenu_onclick == "yes")
//	document.onclick=hidemenu;

