function dockInit() { 
	var contentWidth=$('bwdock_productpane').clientWidth - $('bwdock_products').clientWidth;
	var slidetrackWidth=$('bwdock_slidertrack').clientWidth - $('bwdock_slidershadow').clientWidth;
	
	myDock=new Control.Slider('bwdock_slider','bwdock_slidertrack', {axis:'horizontal', alignX:10});
	
	myDock.update =  function(value) {
                window.clearInterval(myDock.animationId);
 		$('bwdock_productpane').style.left = (-value * contentWidth).toFixed()+"px";
		$('bwdock_slidershadow').style.left = (value * slidetrackWidth).toFixed()+"px";
	}
	
	myDock.options.onChange = myDock.update
	myDock.options.onSlide = myDock.update
	
	if (document.bwdock.startPos) {
		//myDock.setValue(document.bwdock.startPos);
		dockSlideTo(document.bwdock.startPos);
		//myDock.update(document.bwdock.startPos);
	} else {
		dockSlideTo(0.5);
		//myDock.update(0.5);
	}
}

function dockSlideTo(toX) {
	if (toX > 1) toX = 1;
	if (toX < 0) toX = 0;
	myDock.sliderVal = toX;
	window.clearInterval(myDock.animationId);
	var w = $('bwdock_productpane').clientWidth - $('bwdock_products').clientWidth;
	var stopPoint = w * toX;
	var sliderStopPoint = Math.round(($('bwdock_slidertrack').clientWidth - $('bwdock_slider').clientWidth) * toX);
	myDock.isSliding = true;
	myDock.animationId = window.setInterval(
		function() {
			var sliderPos = -parseInt($('bwdock_productpane').getStyle('left')) || 0;
			var handlePos = parseInt($('bwdock_slider').getStyle('left')) || 0;
			var x = calculateDecel(sliderPos, stopPoint);
			var sx = calculateDecel(handlePos, sliderStopPoint);
			$('bwdock_productpane').style.left = -x + "px";
			$('bwdock_slider').style.left = sx + "px";
			$('bwdock_slidershadow').style.left = sx + "px";
			
			if (x == stopPoint) {
				window.clearInterval(myDock.animationId);
				myDock.isSliding = false;
			}
		}, 30);
}

function calculateDecel(from, to) {
	var n=from-Math.floor((from-to)*.2);
	if (Math.abs(from-to)<4) return to;
	else return n;
}

