function findAbsPos(obj) {
    var ret = new Object();
	ret.x = ret.y = 0;
	ret.x = obj.offsetLeft;
	ret.y = obj.offsetTop;
	if (obj.offsetParent) {
		while (obj = obj.offsetParent) {
			ret.x += obj.offsetLeft
			ret.y += obj.offsetTop
		}
	}
	return ret;
}
var basketFromPos=0;
var basketToPos=0;
var leftPos=0;
function calcMoveBasket()
{
	
	if (document.documentElement && document.documentElement.scrollTop)
		basketToPos=document.documentElement.scrollTop;
	else if (document.body && document.body.scrollTop)
		basketToPos=document.body.scrollTop;
	else
		basketToPos=0;
	var holderObj=document.getElementById('holder');
	var holderPos=findAbsPos(holderObj);
	leftPos=holderPos.x+holderObj.offsetWidth;
}
function moveBasket()
{
	calcMoveBasket();
	slowMoveBasket();
}
function fastMoveBasket()
{
	calcMoveBasket();
	basketFromPos=basketToPos;
	slowMoveBasket();
}
function slowMoveBasket()
{
	try
	{
	var basketObj=document.getElementById('shoppingbasketouter');
	basketObj.style.left=leftPos+"px";
	if(basketFromPos!=basketToPos)
	{
		var diff=((1.0*(basketToPos-basketFromPos))/3);
		if(diff<0)
		{
			diff=Math.floor(diff);
		}else{
			diff=Math.ceil(diff);
		}
		basketFromPos=basketFromPos+diff;
	}
	basketObj.style.top=basketFromPos+'px';
	if(basketFromPos==basketToPos)
	{
		setTimeout('moveBasket()',100);
	}else{
		setTimeout('slowMoveBasket()',20);
	}
	}catch(err)
	{
		setTimeout('moveBasket()',100);
	}
}

function shiftBasket()
{
 calcMoveBasket();
 slowMoveBasket();
}