function findDOM(objectID, withStyle) {
	if (withStyle) {
		if (document.getElementById) return (document.getElementById(objectID).style) ;
		else if (document.all) return (document.all[objectID].style);
		else if ((navigator.appName.indexOf('Netscape') != -1) && (parseInt(navigator.appVersion) == 4)) return (document.layers[objectID]);
	}
	else {
		if (document.getElementById) return (document.getElementById(objectID)) ;
		else if (document.all) return (document.all[objectID]);
		else if ((navigator.appName.indexOf('Netscape') != -1) && (parseInt(navigator.appVersion) == 4)) return (document.layers[objectID]);
	}
}

function findPageWidth()
{
	if (window.innerWidth != null) return window.innerWidth;
	if (document.body.clientWidth != null) return document.body.clientWidth;
	return (null);
}

function contextInfo(evt,objectID)
{
	var pageWidth = findPageWidth();
	domStyle = findDOM(objectID,1);
	dom = findDOM(objectID,0);
	visInfo = domStyle.visibility;
	if (dom.offsetWidth) elementWidth = dom.offsetWidth;
	 else if (dom.clip.width) elementWidth = dom.clip.width;
	if (visInfo == 'visible' || visInfo == 'show') domStyle.visibility = 'hidden';
	 else {
	   if (evt.pageY) {
	     topValue = evt.pageY + 4;
		 leftValue = evt.pageX + 20;
	   }
	   else if (evt.y) {
	   		  topValue = evt.y + 4 + document.body.scrollTop;
		 	  leftValue = evt.x + 20 + document.body.scrollLeft;
			}
	   if (leftValue < 2) leftValue = 2;
	   else if ((leftValue + elementWidth) > pageWidth) leftValue = leftValue - (elementWidth / 2);
	   domStyle.top = topValue;
	   domStyle.left = leftValue;
	   domStyle.visibility = 'visible';
	 }
}

function closeSS(objectID)
{
	var pageWidth = findPageWidth();
	domStyle = findDOM(objectID,1);
	dom = findDOM(objectID,0);
	visInfo = domStyle.visibility;
	if (visInfo == 'visible' || visInfo == 'show') domStyle.visibility = 'hidden';
	 }