String.prototype.trim = function() {
	return this.replace(/^\s+|\s+$/g,"");
	}
//---------------------------------------------------------------------------------------------
function $(element) {
	if (arguments.length > 1) {
		for (var i = 0, elements = [], length = arguments.length; i < length; i++) {
			elements.push($(arguments[i]));
			}
		return elements;
		}
	else {
		return document.getElementById(element);
		}
	}
//---------------------------------------------------------------------------------------------
function doJumpTo() {
	var ele=document.getElementById("jumpto");
	if (ele) {
		var page=ele.options[ele.selectedIndex].value;
		if (page.length>0) {
			window.location=page;
			}
		}
	}
//---------------------------------------------------------------------------------------------
function show(id) {
	var ele=document.getElementById(id);
	if (ele) {
		ele.style.display=(ele.style.display=="none") ? "" : "none";
		}
	}
//---------------------------------------------------------------------------------------------
function mcs_showAll(id) {
	var eles=document.getElementsByName(id);
	for (jj=0; eles && jj<eles.length; jj++) {
		eles[jj].style.display=(eles[jj].style.display=="none") ? "" : "none";
		}
	}
//---------------------------------------------------------------------------------------------
function mcs_toggle(el) {
	var ele=document.getElementById(el);
	var pic=document.getElementById(el+"icon");
	var txt=document.getElementById(el+"txt");
	if (ele.style.display=="none") {
		ele.style.display="";
		if (pic) pic.src="/myspeed/minus.gif";
		if (txt) txt.innerHTML="Hide"+txt.innerHTML.substring(4);
		}
	else {
		ele.style.display="none";
		if (pic) pic.src="/myspeed/plus.gif";
		if (txt) txt.innerHTML="Show"+txt.innerHTML.substring(4);
		}
	}
//---------------------------------------------------------------------------------------------
function mcs_selectListItem(box, val) {
	for (var ii=0; ii<box.options.length; ii++) {
		if (box.options[ii].value==val) {
			box.selectedIndex=ii;
			break;
			}
		}
	}
//---------------------------------------------------------------------------------------------
function mcs_showPopup(file, width, height) {
	window.open(file,"popup","width="+width+",height="+height+",fullscreen=0,statusbar=yes,scrollbars=yes,resizable=yes");
	}
//---------------------------------------------------------------------------------------------
function mcs_getPopup(file, width, height) {
	return window.open(file,"popup","width="+width+",height="+height+",fullscreen=0,statusbar=yes,scrollbars=yes,resizable=yes");
	}
//---------------------------------------------------------------------------------------------
function mcs_getScrollPos() {
	var nRet=document.body.scrollTop;
	if (nRet==0) {
	    if (window.pageYOffset) {
	        return window.pageYOffset;
	    	}
	    else {
	        return (document.body.parentElement) ? document.body.parentElement.scrollTop : 0;
			}
		}
	else {
		return nRet;
		}
	}
//---------------------------------------------------------------------------------------------
function mcs_getEventPos(e, hit, relativeTo) {
	if (document.layers) {
		return new Array(e.layerX, e.layerY);
		}
	else if (document.all) {
		var hitpos=mcs_getPosition(hit, relativeTo);
		return new Array(event.clientX-hitpos[0], event.clientY-hitpos[1]);
		}
	else if (document.getElementById) {
		var hitpos=mcs_getPosition(hit, null);
		return new Array(e.pageX-hitpos[0], e.pageY-hitpos[1]);
		}
	}
//-----------------------------------------------------------------------------------------
function mcs_getPosition(ele, relativeTo) {
	relativeTo=(relativeTo==null) ? null : relativeTo.offsetParent;
	var x=0;
	var y=0;
	while (ele && ele!=relativeTo) {
		x+=ele.offsetLeft;
		y+=ele.offsetTop;
		ele=ele.offsetParent;
		}
	return new Array(x,y);
	}
//-----------------------------------------------------------------------------------------
function mcs_selectTab(tabName) {
	var tabs=new Array("testing", "monitoring", "reporting", "help");
	for (var ii=0; ii<tabs.length; ii++) {
		var tab=document.getElementById("tab"+tabs[ii]);
		var tabtxt=document.getElementById("tabtxt"+tabs[ii]);
		var tabcont=document.getElementById("tabcont"+tabs[ii]);
		if (tab && tabtxt && tabcont) {
			tab.className=(tabs[ii]==tabName) ? "tab livetab" : "tab";
			tabtxt.className=(tabs[ii]==tabName) ? "tabtxt livetxt" : "tabtxt";
			tabcont.style.display=(tabs[ii]==tabName) ? "block" : "none";
			}
		}
	}

