
var pointerObj;
var pointerLeftLast = 20;
var pCurent = 0;
var pTarget = 0;
var pSpeed = 0;
var movePSpeed = 9;
var resetPSpeed = 4;
var intervalTimer =0;

function setPointerLeft()
{
	if(document.getElementById("curentCat"))
	{
		setUp(document.getElementById("curentCat"));
		pointerLeftLast = pTarget;
		resetPointerLeft(document.getElementById("curentCat")); // move slow
//		document.getElementById("pointer").style.left = pTarget+"px"; // move at once
	}
}

function movePointerLeft(obj)
{
	scroll(0,0);
	pointerZ(1);
	setUp(obj);
	pSpeed = (document.all) ? movePSpeed : movePSpeed-1;
	startMove();
}

function resetPointerLeft(obj)
{
	pointerZ(0);
	setUp(obj);
	pTarget = pointerLeftLast;
	pSpeed = (document.all) ? resetPSpeed : resetPSpeed-1;
	startMove();
}

function setUp(obj)
{
	clearInterval(intervalTimer);

	theFrame = document.getElementById("siteFrame");
	theFramePos = findPos(theFrame);
	theFrameLeft = theFramePos[0];

	pos = findPos(obj);
	objLeft = pos[0];
	objMiddle = parseInt(obj.clientWidth/2)+objLeft-theFrameLeft;
	pointerObj = document.getElementById("pointer");
	pointerObjHalf = parseInt(pointerObj.clientWidth/2);
	pTarget = objMiddle-pointerObjHalf;
}

function startMove()
{
	if(!pointerObj.style.left) pointerObj.style.left=0;

	distance = pTarget-parseInt(pointerObj.style.left);
	if(distance!=0)
	{
		if(distance>0) intervalTimer = setInterval("moveForward()",20);
		else intervalTimer = setInterval("moveBack()",20);
	}
}

function moveForward()
{
	curtp = parseInt(pointerObj.style.left);
// document.getElementById("alert").innerHTML = "curtp="+curtp+"<br>speed="+pSpeed+"<br>target="+pTarget+"<br>";
	if((curtp+pSpeed)<pTarget)
		pointerObj.style.left = curtp+pSpeed+"px";
	else
		pointerObj.style.left = pTarget+"px";
}

function moveBack()
{
	curtp = parseInt(pointerObj.style.left);
	if((curtp-pSpeed)>pTarget)
		pointerObj.style.left = curtp-pSpeed+"px";
	else
		pointerObj.style.left = pTarget+"px";
}

function findPos(obj)
{
	var curleft = curtop = 0;
	if (obj.offsetParent)
	{
		do
		{
			curleft += obj.offsetLeft;
			curtop += obj.offsetTop;
		} while (obj = obj.offsetParent);
	}
	return [curleft,curtop];
}

// not in use
// id="pointer" onmouseover="pointerZ(1);" onmouseout="pointerZ(0);"
function pointerZ(stat)
{
	document.getElementById("pointer").style.zIndex = stat ? 100 : 1;
}

function siterightsZ(stat)
{
	document.getElementById("siterights").style.zIndex = stat ? 100 : 1;
}

// window.onload = setPointerLeft;
