isDOM=document.getElementById //DOM1 browser (MSIE 5+, Netscape 6, Opera 5+)
isMSIE=document.all && document.all.item //Microsoft Internet Explorer 4+
isNetscape4=document.layers //Netscape 4.*
isOpera=window.opera //Opera
isOpera5=isOpera && isDOM //Opera 5+
isMSIE5=isDOM && isMSIE && !isOpera //MSIE 5+
isMozilla=isNetscape6=isDOM && !isMSIE && !isOpera

var object;

function getLayer(layerName) {
  if(isDOM){ return document.getElementById(layerName); }
  if(isMSIE){ return document.all[layerName]; }
  if(isNetscape4){ return eval('document.layers[layerName]'); }
  return false;
}

function showhelp(doing,what,txt) {
	mousex = doing.clientX;
	mousey = doing.clientY;
	pagexoff = 0;
	pageyoff = 0;

	if(isMSIE5) {
		pagexoff = document.body.scrollLeft;
		pageyoff = document.body.scrollTop;
	}
	else {
		pagexoff = window.pageXOffset;
		pageyoff = window.pageYOffset;
	}

if (getLayer(what)) {
	if(isNetscape4) {
		object = getLayer(what);
	}
	else {
		object = getLayer(what).style;
	}

	if (object) {
		leftoff = mousex-pagexoff;
		object.left = (mousex+pagexoff);
  
		topoff = mousey-pageyoff;

		if (isOpera && topoff <= 30) {
			object.top = mousey + 20;
		}
		else {
			if( mousey <= 30) {
				object.top = (mousey+pageyoff) + 20;
			}
			else {
				if (isOpera) {
					object.top = mousey + 20;
				}
				else {
					object.top = (mousey+pageyoff) + 20;
				}
			}
		}

		getLayer(what).innerHTML = txt;                                          
		
		if(isNetscape4) {
			object.visibility = 'show';
		}
		else {
			object.visibility = 'visible';
		}
	}
}

  return true;
}

function hidehelp() {
  if(object){
    if(isNetscape4)
      object.visibility = 'hide';
    else
      object.visibility = 'hidden';
  }
  return true;
}
