//Drag and Drop
var objekt = null;

var dragx = 0;
var dragy = 0;
var posx = 0;
var posy = 0;
var dragging = false;
var picturedrag = false;
var pic_width = 100;
var pic_height = 100;
var dir;

    document.onmousemove = drag;
    document.onmouseup = dragstop;
function dragstart(element, direction)
{
      dir = direction;
      dragging = true;
      objekt = element;
      if(direction == "both")
      {
          dragx = posx - objekt.offsetLeft;
          dragy = posy - objekt.offsetTop;
      }
      else if(direction == "vertical")
      {
          dragy = posy - objekt.offsetTop;
      }
      else if(direction == "horizontal")
      {
          dragx = posx - objekt.offsetLeft;
      }
}

function dragstop()
{
      dragging = false;
      picturedrag = false;
      objekt = null;
}

function drag(ereignis)
{
    if(dragging)
    {
  		if(picturedrag)
  		{
  			if(window.event)
  			{
  				//für IE
	          	posx = window.event.offsetX;
	          	posy = window.event.offsetY;
	          	if(posx < 0 || posy < 0)
	              	return;

				var winposx = document.documentElement.clientWidth;
	            var winposy = document.documentElement.clientHeight;
	            if(winposx == 0)
	            {
	            	winposx = document.body.clientWidth;
	            }

	            if(winposy == 0)
	            {
	            	winposy = document.body.clientHeight;
	            }

	            var winmousex = window.event.clientX;
	            var winmousey = window.event.clientY;
	           	if(parseInt(objekt.offsetWidth) + parseInt(winmousex) + 15 > winposx)
	           	{
	           		objekt.style.left = (posx - parseInt(objekt.offsetWidth) - 15) + "px";
	           	}
	           	else
	           	{
	           		objekt.style.left = (posx + 15) + "px";
	           	}

	           	if(parseInt(objekt.offsetHeight) + parseInt(winmousey) + 15 > winposy)
	           	{
	            	objekt.style.top = (posy - parseInt(objekt.offsetHeight) - 15) + "px";
	           	}
	           	else
	           	{
	            	objekt.style.top = (posy + 15) + "px";
	           	}
  			}
  			else
  			{
  				//für FF
	          	posx = ereignis.layerX;
	          	posy = ereignis.layerY;
	          	if(posx < 0 || posy < 0)
	              	return;

	            var winposx = window.innerWidth;
	            var winposy = window.innerHeight;
	            var winmousex = ereignis.pageX;
	            var winmousey = ereignis.pageY;

	           	if(parseInt(objekt.offsetWidth) + parseInt(winmousex) + 15 > winposx)
	           	{
	           		objekt.style.left = (posx - parseInt(objekt.offsetWidth) - 15) + "px";
	           	}
	           	else
	           	{
	           		objekt.style.left = (posx + 15) + "px";
	           	}

	           	if(parseInt(objekt.offsetHeight) + parseInt(winmousey) + 15 > winposy)
	           	{
	            	objekt.style.top = (posy - parseInt(objekt.offsetHeight) - 15) + "px";
	           	}
	           	else
	           	{
	            	objekt.style.top = (posy + 15) + "px";
	           	}
  			}

  		}
  		else
  		{
          	posx = document.all ? window.event.clientX : ereignis.pageX;
          	posy = document.all ? window.event.clientY : ereignis.pageY;
          	if(posx < 0 || posy < 0)
              	return;
          	if(dir == "both")
          	{
              	objekt.style.left = (posx - dragx) + "px";
              	objekt.style.top = (posy - dragy) + "px";
          	}
          	else if(dir == "vertical")
          	{
              	objekt.style.top = (posy - dragy) + "px";
          	}
          	else if(dir == "horizontal")
          	{
	       		objekt.style.left = (posx - dragx) + "px";
          	}
  		}
 	}
}

//Scrolling
var scrolling = false;
var px = 0;
var py = 0;
var x;
var y;

function scrollstart(ereignis)
{
    if (!ereignis)
        ereignis = window.event;
    px = ereignis.clientX;
    py = ereignis.clientY;
    scrolling = true;
}

function scrollstop()
{
    scrolling = false;
}

function scroll(ereignis)
{
    if (!ereignis)
        ereignis = window.event;
    if(scrolling)
    {
        scrollx = ereignis.clientX;
        scrolly = ereignis.clientY;
        x =  px - scrollx;
        y =  py -  scrolly;

        if(x == 0 && y == 0)
            return;
        if(x != 0)
            window.scrollBy(x, 0);
        if(y != 0)
            window.scrollBy(0, y);
        px = scrollx;
        py = scrolly;
    }
}

function KontainerFadeIn(obj, strength, delay)
{
    var b2 = document.getElementById(obj);
    if(b2.style.MozOpacity)
    {
    	b2.style.MozOpacity = strength / 100;
    }
    else if (b2.filters)
    {
    	b2.filters.alpha.opacity = strength;
    }
    strength = strength + 1;
    if(strength < 100)
    {
        setTimeout("KontainerFadeIn('" + obj + "' ," + strength + ", " + delay + ")",delay);
    }
    else if(strength == 100)
    {
        setTimeout("KontainerFadeIn('" + obj + "' ,100, " + delay + ")",delay);
    }
    else
    {
        setTimeout("KontainerFadeIn('" + obj + "' ,100, " + delay + ")",delay);
    }
}

function picdragstart(element,x,y)
{
 	dragging = true;
    objekt = element;
    picturedrag = true;
	pic_width = x;
	pic_height = y;
    dragx = posx - objekt.offsetLeft;
    dragy = posy - objekt.offsetTop;
}