// low level library
// (c) IMC2 2007


// *** init what's needed for the functions herewithin
var IE  = (navigator.userAgent .toLowerCase().indexOf("msie")    != -1);
var FF  = (navigator.userAgent .toLowerCase().indexOf("firefox") != -1);
var MAC = (navigator.appVersion.toLowerCase().indexOf("mac")     != -1);


// *** functions used by other function herewithin
function $(divName)
{
  return (document.getElementById(divName));
}
function getStyle (divName, styleName)
{
  var div   = $(divName);
  var value = (div.currentStyle)
            ? div.currentStyle[styleName]
            : document.defaultView.getComputedStyle(div,"").getPropertyValue(styleName);
  return (value);
}

// *** miscellaneous functions
function block             (divName)               {$(divName).style.display               = "block";}
function blockParent       (divName)               {$(divName).parentNode.style.display    = "block";}
function hide              (divName)               {$(divName).style.visibility            = "hidden";}
function hideParent        (divName)               {$(divName).parentNode.style.visibility = "hidden";}
function show              (divName)               {$(divName).style.visibility            = "visible";}
function unblock           (divName)               {$(divName).style.display               = "none";}
function unblockParent     (divName)               {$(divName).parentNode.style.display    = "none";}

// *** setter functions
function setBackgroundColor(divName, color)        {$(divName).style.backgroundColor       =  color;}
function setBackgroundImage(divName, image)        {$(divName).style.backgroundImage       =  "url("+image+")";}
function setClass          (divName, className)    {$(divName).className                   =  className;}
function setColor          (divName, color)        {$(divName).style.color                 =  color;}
function setContent        (divName, content)      {$(divName).innerHTML                   =  content;}
function setCursor         (divName, cursor)       {$(divName).style.cursor                =  cursor;}
function setHeight         (divName, height)       {$(divName).style.height                =  height  + "px";}
function setMarginLeft     (divName, margin)       {$(divName).style.marginLeft            =  margin  + "px";}
function setMarginTop      (divName, margin)       {$(divName).style.marginTop             =  margin  + "px";}
function setPaddingLeft    (divName, padding)      {$(divName).style.paddingLeft           =  padding + "px";}
function setPaddingTop     (divName, padding)      {$(divName).style.paddingTop            =  padding + "px";}
function setScrollTop      (divName, scroll)       {$(divName).scrollTop                   =  scroll;}
function setOverflow       (divName, overflow)     {$(divName).style.overflow              =  overflow;}
function setWeight         (divName, weight)       {$(divName).style.fontWeight            =  weight;}
function setWidth          (divName, width)        {$(divName).style.width                 =  width   + "px";}

// *** getter functions
function getDisplay        (divName)               {return (getStyle (divName, "display"));}
function getMarginLeft     (divName)               {return (getStyle (divName, (IE) ? "marginLeft" : "margin-left"));}
function getMarginTop      (divName)               {return (getStyle (divName, (IE) ? "marginTop"  : "margin-top" ));}
function getHeight         (divName)               {return ($(divName).offsetHeight);}
function getWidth          (divName)               {return ($(divName).offsetWidth );}
function getOverflow       (divName)               {return (getStyle (divName, "overflow"));}
function getVisibility     (divName)               {return (getStyle (divName, "visibility"));}

