var DHTML = 0, DOM = 0, MS = 0, OP = 0, MZ = 0, KONQUEROR = 0;
var iX, iY;
var strActiveElem = "";
var strOpenElem = "";
var bMoveElem = 0;

function DHTML_init()
{
  var useragent = navigator.userAgent;
  var pos = useragent.indexOf('Konqueror');
  
  /* Browser die DHTML und DOM unterstuetzen */
  if(document.getElementById)
    {
      DHTML = 1;
      DOM = 1;
    }

	/* KONQUEROR */
	if (pos != -1) 
		KONQUEROR = 1;

  /* OPERA */
  if (window.opera)
    OP = 1;
  
  /* Internet Explorer */
  if(document.all && !OP && !KONQUEROR)
    {
      DHTML = 1;
      MS = 1;
    }

  /* Netscape ab V6.0, Mozilla */
  if (DOM && !MS && !OP && (document.documentElement))
    {
      DHTML = 1;
      MZ = 1;	
    }

  //alert("DHTML="+DHTML+"-DOM="+DOM+"-MS="+MS+"-MZ="+MZ+"-KONQUEROR="+KONQUEROR+"-OP="+OP);
}


function getElem(strByWhat,strName,iNumber)
{
	var oElem;

	switch (strByWhat.toLowerCase())
		{
			case ("id"):
      	if (typeof document.getElementById(strName) == "object")
      		oElem = document.getElementById(strName);
      	else 
      		oElem = null;
      	break;

			case ("name"):
      	if (typeof document.getElementsByNameId(strName) == "object")
      		oElem = document.getElementsByNameId(strName)[iNumber];
      	else 
      		oElem = null;
      	break;

			case ("tagname"):
      	if (typeof document.getElementsByTagName(strName) == "object")
	      	oElem = document.getElementsByTagName(strName)[iNumber];
      	else 
      		oElem = null;
      	break;

      default:
      	oElem = null;
      	break;
		}
	
	return(oElem);

}


function ShowBox(strName, bMoveElemInit, iXOffset, iYOffset)
{ 
  bMoveElem = bMoveElemInit;
	
  //HideBox(strOpenElem);

  strOpenElem = strName;
    
	if (bMoveElem == 1)
    strActiveElem = strName;

	if (isNaN(iX)) iX = 0;
	if (isNaN(iY)) iY = 0;
	
	if (iXOffset == "center")
		if (MS) iXOffset = -iX + (document.body.offsetWidth - parseInt(getElem("id",strName).style.width)) / 2;
		else iXOffset = -iX + (window.innerWidth - parseInt(getElem("id",strName).style.width)) / 2;
	else if (isNaN(iXOffset))
		iXOffset = 15;

	if (iYOffset == "center")
		if (MS) iYOffset = -iY + (document.body.offsetHeight - parseInt(getElem("id",strName).style.height)) / 2;
		else iYOffset = -iY + (window.innerHeight - parseInt(getElem("id",strName).style.height)) / 2;
	else if (isNaN(iYOffset))
		iYOffset = -20;

	if(DOM)
		{
  		var o = getElem("id",strName);
  		o.style.left = (iX + iXOffset) + "px";
			o.style.top = (iY + iYOffset) + "px";
			o.style.display = "";
		}
}


function HideBox(strName)
{
  if (bMoveElem == 1)
    strActiveElem = "";

  strOpenElem = "";

  getElem("id",strName).style.display = "none";
}


function handleMove(ev)
{
	Event = ev;

  if (MZ)
  	{
  		iX = Event.pageX;
  		iY = Event.pageY;
  	}
  else if (OP || KONQUEROR)
  	{
  		iX = window.event.clientX + document.body.scrollLeft;
  		iY = window.event.clientY + document.body.scrollTop;
  	}

  if (strActiveElem != "" && bMoveElem == 1)
   	{
	    var o = getElem("id",strActiveElem)
      
  	  if (MZ)
	   		{
		      o.style.left = (iX + 15) + "px";
  			  o.style.top = (iY - 20) + "px";
	      }    	
		  else if (KONQUEROR)
    	 	{
      		o.style.left = (iX + 15);
		     	o.style.top = (iY - 20);
    	 	}
		  else if (OP)
    		{
      		o.style.pixelLeft = iX + 15;
		      o.style.pixelTop = iY - 20;
	  		}  		
  	}
}


function MShandleMove()
{
 	iX = window.event.clientX + document.body.scrollLeft;
 	iY = window.event.clientY + document.body.scrollTop;

 	if (strActiveElem != "" && bMoveElem == 1)
 		{
    	var o = getElem("id",strActiveElem);
 			o.style.left = iX + 15;
 			o.style.top = iY - 20;
    }
}


function Event_init()
{
	if (MS)
		document.onmousemove = MShandleMove;
	else
		window.onmousemove = handleMove;
}


DHTML_init();
