IE = (document.all)?1:0;
function mouse_over(obj,desc,name) {		
	        if(!IE)
	        return ;
		var oDOM = document.getElementById("balloon");
		var x=document.body.scrollLeft+window.event.clientX; 
                var y=document.body.scrollTop+window.event.clientY; //
                        //wait(1000);      			
			oDOM.style.display="";				  			
			var oTopArrowNode = document.getElementById("toparrow");
			var oTopArrowRevNode = document.getElementById("toparrowrev");
			var oBottomArrowNode = document.getElementById("bottomarrow");
			var oBottomArrowRevNode = document.getElementById("bottomarrowrev");
			
			var oTopNode=obj.offsetParent; 
			var nTopCoord=obj.offsetTop; 
			var nLeftCoord= obj.offsetLeft;
			//while (oTopNode.tagName!="BODY") { nTopCoord+=oTopNode.offsetTop; nLeftCoord+=oTopNode.offsetLeft; oTopNode=oTopNode.offsetParent; }
			obj.nTopCoord = nTopCoord; 
			obj.nLeftCoord = nLeftCoord;

			var bTop = false; var bLeft = false;
			oTopArrowNode.style.display="none";
			oTopArrowRevNode.style.display="none";
			oBottomArrowNode.style.display="none";
			oBottomArrowRevNode.style.display="";
			var nScrollTop = new Number(document.body.scrollTop);
			//alert(nScrollTop)
			//nScrollTop=nScrollTop+250;
			// set to default position first
			oTopArrowRevNode.style.display="none";
			oBottomArrowRevNode.style.display="none";
		    
		    obj.nLeftCoord = x;
            obj.nTopCoord = y;
			oDOM.style.posLeft = obj.nLeftCoord - 125;
			oTopArrowRevNode.style.display="none";
			oTopArrowNode.style.display="none";
			oDOM.style.posTop = obj.nTopCoord - oDOM.offsetHeight + 15;
			
			var nEventy = new Number(event.y);
			//alert(nScrollTop);
			//alert(nEventy);
			
			//if (oDOM.style.posTop < nScrollTop) {
				// div is above the screenview, fold down
				if  (nScrollTop <=119) {
					if (nEventy-nScrollTop<=425) {
						bTop= true;
					} else {
						bTop= false;
					}
				} else {
					if (nEventy-nScrollTop<=150) {
						bTop= true;
						if (nScrollTop>=220&&nEventy>350) {
							bTop= false;
							}
					} else {
						bTop= false;
					}
				}
			//}
			
			//if ( nScrollTop == 0 ) {
				// div is above the screenview, fold down
				//bTop = true;
			//}
			
			var nBodyWidth = new Number(document.body.clientWidth);
			if (oDOM.style.posLeft + oDOM.clientWidth > nBodyWidth)
			{
				// div is cut off on right, fold left
				bLeft = true;
			}			
			// show everything
			oTopArrowNode.style.display="";
			oTopArrowRevNode.style.display="";
			oBottomArrowNode.style.display="";
			oBottomArrowRevNode.style.display="";			
			if (bLeft) {
				// hide regular arrows
				oTopArrowNode.style.display="none";
				oBottomArrowNode.style.display="none";
				oDOM.style.posLeft = obj.nLeftCoord - 235;
			} else {
				// hide alternate (left facing) arrows
				oTopArrowRevNode.style.display="none";
				oBottomArrowRevNode.style.display="none";
				oDOM.style.posLeft = obj.nLeftCoord - 125;
			}
			
			
			
			if (!bTop) {
				// hide top nodes
				
				//oBottomArrowRevNode.style.display="none";
				//oBottomArrowNode.style.display="none";
				//oDOM.style.posTop = obj.nTopCoord + obj.offsetHeight - 50;
				
				oTopArrowRevNode.style.display="none";
				oTopArrowNode.style.display="none";
				oDOM.style.posTop = obj.nTopCoord - oDOM.offsetHeight - 50;
				
			} else {
				// hide bottom nodes
				
				oBottomArrowRevNode.style.display="none";
				oBottomArrowNode.style.display="none";
				oDOM.style.posTop = obj.nTopCoord + obj.offsetHeight - 50;
				
			}	
			
			bTop = false;					
			document.body.onmousemove=null;			
			oNode = document.getElementById('siteinfo');
			//sHTML = "<IFRAME name=siteinfo src='/bin/siteinfo.cgi?id=" + sid + "' width=300 height=120 frameborder=0 marginwidth=0 marginheight=0 scrolling=no></IFRAME>";
			sHTML = loadXMLDoc("show_desc.asp?name="+name+"&desc="+desc);			
			if (oNode)
			{
				oNode.setAttribute("innerHTML","");
				oNode.insertAdjacentHTML("beforeend", sHTML);
			}		

}	
function mouse_out(obj) {
	        if(!IE)
	        return;	
		var oDOM = document.getElementById("balloon");
		if (oDOM.componentFromPoint(event.clientX, event.clientY) !='') {			
			oDOM.style.display="none";
			document.body.onmousemove=null;
		}		
	
}	


function wait(delay){
	var dx=document.body.scrollLeft+event.clientX; 
        var dy=document.body.scrollTop+event.clientY; 
        string="pauseforalert("+delay+","+dx+","+dy+");";
        setTimeout(string,delay);
}
function pauseforalert(delay,xx,xy){	
	 //var yx=document.body.scrollLeft+event.clientX; 
         //var yy=document.body.scrollTop+event.clientY;                   
        // if(yx!=xx && yy==xy)
         document.onmousemove = null;
         alert("Ok "+delay/1000+" seconds have elapsed");
}

function display(msg) {
  document.write(msg);  
}

function loadXMLDoc(url) {
    // branch for native XMLHttpRequest object
    if (window.XMLHttpRequest) {
        req = new XMLHttpRequest();
        req.onreadystatechange = processReqChange;
        req.open("GET", url, false);
        req.send(null);
    // branch for IE/Windows ActiveX version
    } else if (window.ActiveXObject) {
        req = new ActiveXObject("Microsoft.XMLHTTP");
        if (req) {
            req.onreadystatechange = processReqChange;
            req.open("GET", url, false);
            req.send();
        }
    }       
    return req.responseText;    
}

function processReqChange() {
    // only if req shows "loaded"
    if (req.readyState == 4) {
        // only if "OK"
        if (req.status == 200) {
            // ...processing statements go here...
        } else {
            //alert("There was a problem retrieving the XML data:\n" + req.statusText);
        }
    }
}

