dragobjekt = false;

function dragstart(ff)
{
	bro = document.getElementById && !document.all;
	el = bro ? ff.target : event.srcElement;

	if (el.className == "figur")
	{
		dragobjekt = el;
		dragobjekt.style.zIndex++;
		document.body.style.cursor = "move";
		dragx = posx - dragobjekt.offsetLeft;
		dragy = posy - dragobjekt.offsetTop;
		return false;
	}
}

function drag(ff)
{
	bro = document.getElementById && !document.all;
	posx = bro ? ff.clientX : event.clientX;
	posy = bro ? ff.clientY : event.clientY;

	if (dragobjekt != false)
	{
		dragobjekt.style.left = Math.round((posx - dragx)/38)*38 + "px";
		dragobjekt.style.top = Math.round((posy - dragy)/36)*36 + "px";
		return false;
	}
}

function dragstop()
{
	if (dragobjekt != false)
	{
		for (i = 0; i < document.images.length; i++)
		{
			el = document.images[i];

			if (el.className == "figur" && el != dragobjekt)
			{
				if (el.style.left == dragobjekt.style.left && el.style.top == dragobjekt.style.top)
				{
					el.style.left = "722px";
					el.parentNode.appendChild(el);
				}
			}
		}

		dragobjekt.style.zIndex--;
		dragobjekt = false;
		document.body.style.cursor = "default";
		return false;
	}
}

document.onmousedown = dragstart;
document.onmousemove = drag;
document.onmouseup = dragstop;