function getposOffset(overlay, offsettype) {
  var totaloffset=(offsettype=="left")? overlay.offsetLeft : overlay.offsetTop;
  var parentEl=overlay.offsetParent;
  while (parentEl!=null) {
   totaloffset=(offsettype=="left")? totaloffset+parentEl.offsetLeft : totaloffset+parentEl.offsetTop;
   parentEl=parentEl.offsetParent;
  }
  return totaloffset;
}

function overlay(curobj, subobjstr, opt_position) {
  if (document.getElementById) {
    var subobj=document.getElementById(subobjstr);
    subobj.style.display=(subobj.style.display!="block")? "block" : "none";
    var xpos=getposOffset(curobj, "left")+((typeof opt_position!="undefined" && opt_position.indexOf("right")!=-1)? -(subobj.offsetWidth-curobj.offsetWidth) : 0);
    var ypos=getposOffset(curobj, "top")+((typeof opt_position!="undefined" && opt_position.indexOf("bottom")!=-1)? curobj.offsetHeight : 0);
    subobj.style.left=xpos+"px";
    subobj.style.top=ypos+"px";
    return false;
  } else return true;
}

function overlayclose(subobj) {
  document.getElementById(subobj).style.display="none";
}

