function easeInOut(minValue,maxValue,totalSteps,actualStep,powr)
{
	var delta = maxValue - minValue;
	var stepp = minValue+(Math.pow(((1 / totalSteps) * actualStep), powr) * delta);
	return Math.ceil(stepp);
}
function scrollMem(elem, startScroll,endScroll,steps,intervals,powr) { 
//Width changer with Memory by www.hesido.com
    if (elem.scrollMem)
	window.clearInterval(elem.scrollMem);
    elem.scrollMem = window.setInterval(
	function() {
		var ease = ((getScrollXY()[0] - endScroll) * powr) * -1;
	  //alert(ease);
	  window.scrollBy(ease, 0); 
	  if (getScrollXY()[0] == endScroll-10 || getScrollXY()[0] <= 5 || getScrollXY()[0] == endScroll + 10)
	  {
//		  alert (getScrollXY()[0]);
		window.clearInterval(elem.scrollMem);
		if (getScrollXY()[0] > endScroll)
		{
			var scr = endScroll - getScrollXY()[0];
		}
		else
		{
			var scr = endScroll - getScrollXY()[0];
		}
		//alert(endScroll);
		//alert(scr);
		window.scrollBy(scr, 0);
	  }
	} 
	,intervals)
}
function getScrollXY() {
  var scrOfX = 0, scrOfY = 0;
  if( typeof( window.pageYOffset ) == 'number' ) {
    //Netscape compliant
    scrOfY = window.pageYOffset;
    scrOfX = window.pageXOffset;
  } else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
    //DOM compliant
    scrOfY = document.body.scrollTop;
    scrOfX = document.body.scrollLeft;
  } else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
    //IE6 standards compliant mode
    scrOfY = document.documentElement.scrollTop;
    scrOfX = document.documentElement.scrollLeft;
  }
  return [ scrOfX, scrOfY ];
}
var slide = 0;
function capke(event)
{
	var scrollx = 970;
	var key = event.which || event.keyCode;
	//alert(key);
	switch (key)
	{
		case 39: // right
			if (slide < ($$('div.template').length - 1))
			{
				nextScroll(scrollx);
				slide++
			}
			//alert(scrollx);
			break;
		case 37: // left
			prevScroll(scrollx);
			slide--;
			break;
	}
}
function capma(ma)
{
	var scrollx = 970;
	switch(ma)
	{
		case 'right': // right
			if (slide < ($$('div.template').length - 1))
			{
				nextScroll(scrollx);
				slide++
			}
			//alert(scrollx);
			break;
		case 'left': // left
			prevScroll(scrollx);
			slide--;
			break;
	}
}
function capli(li)
{
	var scrollx = 970;
	var scr = (scrollx * li) - getScrollXY()[0];
	//alert (scr);
	scrollMem($('container'),getScrollXY()[0],scr,10,10,0.3);
}
function nextScroll(scrollx)
{
	scrollMem($('container'),getScrollXY()[0],getScrollXY()[0]+scrollx,10,10,0.3);
}
function prevScroll(scrollx)
{
	scrollMem($('container'),getScrollXY()[0], getScrollXY()[0]-scrollx,10,10,0.3);
}
Event.addBehavior({
	'body' : function()
	{
		var marginleft = ($(document.documentElement).clientWidth - 902) * 0.5;
		$('container').style.paddingLeft = marginleft +'px';
		$('container').style.paddingRight = marginleft + 'px';
		//alert(marginleft)
		$(document).observe('keydown', capke);
		$$('div.left').each(
								   function(element)
								   {
									   element.observe(
													   'click',
													   function() { capma('left'); }
													   )
								   }
								   )
		$$('div.right').each(
									function(element)
									{
										element.observe(
														'click',
														function() { capma('right'); }
														)
									}
									)
	}
});
