isNS4 = (document.layers) ? true : false;
isIE4 = (document.all && !document.getElementById) ? true : false; 
isIE5 = (document.all && document.getElementById) ? true : false; 
isIE6 = (document.all && document.getElementById) ? true : false;
isIE7 = (document.all && document.getElementById) ? true : false;
isNS6 = (!document.all && document.getElementById) ? true : false; 


var cm=null;

function getelementbyid(myid) { 
   if (isNS4){ 
        objElement = document.layers[myid]; 
     }else if (isIE4) { 
        objElement = document.all[myid]; 
     }else if (isIE5 || isNS6 || isIE6 || isIE7) { 
             objElement = document.getElementById(myid); 
     } 
return(objElement); 
} 

function switchDiv(objElement,bolVisible){ 
if(isNS4||isIE4){ 
     if(!bolVisible) { 
       objElement.visibility ="hidden" 
     } else { 
       objElement.visibility ="visible" 
     }      
 } else if (isIE5 || isNS6) { 
      if(!bolVisible){ 
         objElement.style.display = "none"; 
          
      } else { 
        objElement.style.display = "";        
        }
      } 

return 1; 
} 

function show(m, l, wdth) { 
 var g = getElementPosition(l);
 var w = document.compatMode=='CSS1Compat' && !window.opera?documentElement.clientWidth:document.body.clientWidth;
 var s_l = self.pageXOffset || (document.documentElement && document.documentElement.scrollLeft) || (document.body && document.body.scrollLeft);
 if (cm!=null) { 
 switchDiv(cm,false); 
 } 
 if (m!=null) { 
 m=getelementbyid(m);
 if (cm==m) { 
 cm=null; 
 return 1; 
 } 
 m.style.top = g.top + g.height +1;
 m.style.left = g.left;
 if ((g.left + wdth + 15) > w + s_l) 
 {
 m.style.left = w - wdth - 15 + s_l;
 } else {
 m.style.left = g.left - 150;
 }
 switchDiv(m,true); 
 cm=m; 
 } 
}

function getElementPosition(elemId)
{
  var elem = getelementbyid(elemId);
  var w = elem.offsetWidth;
  var h = elem.offsetHeight;
  var l = 0;
  var t = 0;
  while (elem)
  {
    l += elem.offsetLeft;
    t += elem.offsetTop;
    elem = elem.offsetParent;
  } 
  return {"left":l, "top":t, "width":w, "height":h}; 
}