function id2div(divID)
{
  if(document.getElementById) return document.getElementById(divID);
  if(document.all) return document.all[divID];
  if(document[divID]) return document[divID];
  if(document.layers) return document.layers[divID];
  return false;
}
function getx(obj)
{
  var posx=0;
  while(obj.offsetParent) {posx+=obj.offsetLeft;obj=obj.offsetParent;}
  return posx;
}
function gety(obj)
{
  var posy=0;
  while(obj.offsetParent) {posy+=obj.offsetTop;obj=obj.offsetParent;}
  return posy;
}
function getw(obj)
{
  if(obj.offsetWidth) return obj.offsetWidth;
  else if(obj.style.pixelWidth) return obj.style.pixelWidth;
  else if(obj.clip.width) return obj.clip.width;
  else return 0;
}
function geth(obj)
{
  if(obj.offsetHeight) return obj.offsetHeight;
  else if(obj.style.pixelHeight) return obj.style.pixelHeight;
  else if(obj.clip.height) return obj.clip.height;
  else return 0;
}
function setxy(obj,posx,posy)
{
  if(!document.layers&&obj.style) obj=obj.style;
  if(document.childNodes) {obj.top=posy+"px";obj.left=posx+"px";}
  else {obj.top=posy;obj.left=posx;}
}
function showobj(obj,vis)
{
    if(!obj.style) obj.visibility=vis?"show":"hide";
    else
    {
        obj.style.display=vis?"inline":"none";
        obj.style.visibility=vis?"visible":"hidden";
    }
}
function getvis(obj)
{
    if(!obj.style) return obj.visibility!="hide";
    else if(obj.style.display=="none") return false;
    else if(obj.style.visibility=="hidden") return false;
    else return true;
}
function showdiv(id,vis)
{
    var obj=id2div(id);
    showobj(obj,vis);
}
function invertshowdiv(id)
{
    var obj=id2div(id);
    showobj(obj,!getvis(obj));
}
function invertshowdiv2(id,id2)
{
    var obj=id2div(id);
    var vis=getvis(obj);
    showobj(obj,!vis);
    showdiv(id2,vis);
}
function setdivtext(id,txt)
{
    var obj=id2div(id);
    if(obj) obj.innerHTML=txt;
}
function invertshowdivsign(id,signid)
{
    var obj=id2div(id);
    if(getvis(obj)) {showobj(obj,false);setdivtext(signid,"+");}
    else {showobj(obj,true);setdivtext(signid,"-");}
}
