var dhtmlMouseScreenX_ = 0;
var dhtmlMouseScreenY_ = 0;
var dhtmlMouseX_ = 0;
var dhtmlMouseY_ = 0;
var dhtmlIE = false;
var dhtmlDOM = true;
var dhtmlOP = false;


//Browser Check
function dhtmlInit()
{
 if (window.opera) dhtmlOP = true;
 if (document.all && !dhtmlOP) dhtmlIE = 1;
}


//Element finden
function isObject(obj)
{
  var t = typeof obj;
  if (t == "object") return true;
  return false;
}


function dhtmlFindById(id)
{
  return document.getElementById(id);
}


function dhtmlFindByName(name)
{
 obj = document.getElementsByName(name);
 if (obj) return obj[0];
 return false;
}


function dhtmlFindElement(id)
{
  if (isObject(id))
  {
   return id;
  }
  var ret = dhtmlFindById(id);
  if (!ret) ret = dhtmlFindByName(id);
  return ret;
}


function dhtmlFindParentTag(Item,Tag)
{
  if (Item.nodeName==Tag) return Item;
  if (Item.parentNode)
  {
    return dhtmlFindParentTag(Item.parentNode,Tag);
  }
  return false;
}


function dhtmlFindChildTag(Item,Tag)
{
  if (Item.nodeName==Tag) return Item;
  for (i=0; i<Item.childNodes.length; i++)
  {
    result = dhtmlFindTag(Item.childNodes[i],Tag);
    if (result!=false) return result;
  }
  return false;
}


function dhtmlOffsetLeft(obj)
{
  var result = 0;
  loop = obj;
  while (isObject(loop) && (loop.tagName!='HTML'))
  {
    if (loop.tagName!='CENTER') result = result + loop.offsetLeft;
    loop = loop.parentNode;
  }
  return result;  
}


function dhtmlOffsetTop(obj)
{
  var result = 0;
  loop = obj;
  while (isObject(loop) && (loop.tagName!='HTML'))
  {
    if (loop.tagName!='CENTER')
    {
      //alert(loop.tagName + " : " + loop.offsetTop);
      result = result + loop.offsetTop;
    }
    loop = loop.parentNode;
  }
  return result;  
}


//Eigenschaft setzen
function dhtmlSetAttribute(obj,name,value)
{
  name = name.toUpperCase();
  elm = dhtmlFindElement(obj);
  if (!elm)
  {
   return false;
  }
  switch (name)
  {
    case "VISIBILITY":
        elm.style.visibility = (value==true) ? 'visible' : 'hidden';
        break;
    case "DISPLAY":
        elm.style.visibility = value;
        break;        
    case "X":
        elm.style.left = value;
        break;
    case "Y":
        elm.style.top = value;
        break;
    case "HEIGHT":
        elm.style.height = value;        
        break;
    case "SRC":
        elm.src = value;
        break;
    case "INNERHTML":
        elm.innerHTML=value;
        break;
    case "VALUE":
        elm.value = value;
        break;
  }
  return true;
}


//Eigenschaft lesen
function dhtmlGetAttribute(obj,name)
{
  name = name.toUpperCase();
  elm = dhtmlFindElement(obj);
  if (!elm)
  {
   return;
  }
  switch (name)
  {
    case "VISIBILITY":
        return elm.style.visibility == 'visible';
        break;
    case "DISPLAY":
        return elm.style.display;
        break;        
    case "X":
        return parseInt(elm.style.left);
        break;
    case "Y":
        return parseInt(elm.style.top);
        break;
    case "HEIGHT":
        return parseInt(elm.style.height);        
        break;        
    case "SRC":
        return elm.src;
        break;
    case "VALUE":
        return elm.value;
        break;
    case "INNERHTML":
        return elm.innerHTML;
        break;        
  }
  return false;
}


function _dhtmlMouse(e) 
{
 if (dhtmlIE)
 {
  dhtmlMouseX_ = window.event.clientX;
  dhtmlMouseY_ = window.event.clientY;
  dhtmlMouseScreenX_ = window.event.screenX;
  dhtmlMouseScreenY_ = window.event.screenY;  
 } else
 {
  dhtmlMouseX_ = e.pageX;
  dhtmlMouseY_ = e.pageY;
  dhtmlMouseScreenX_ = e.screenX;
  dhtmlMouseScreenY_ = e.screenY;  
 }
}


function dhtmlMouseInit()
{
  //document.captureEvents(Event.MOUSEMOVE);
  document.onmousemove = _dhtmlMouse;
}


function dhtmlMouseX()
{
 if (document.onmousemove != _dhtmlMouse) dhtmlMouseInit();
 return dhtmlMouseX_; 
}


function dhtmlMouseY()
{
 if (document.onmousemove != _dhtmlMouse) dhtmlMouseInit();
 return dhtmlMouseY_; 
}


function dhtmlMouseScreenX()
{
 if (document.onmousemove != _dhtmlMouse) dhtmlMouseInit();
 return dhtmlMouseScreenX_; 
}


function dhtmlMouseScreenY()
{
 if (document.onmousemove != _dhtmlMouse) dhtmlMouseInit();
 return dhtmlMouseScreenY_; 
}


dhtmlInit();
dhtmlMouseInit();
