/*
Effect.OpenUp = function(element) {
  element = $(element);
  new Effect.BlindDown(element, arguments[1] || {});
}

Effect.CloseDown = function(element) {
  element = $(element);
  new Effect.BlindUp(element, arguments[1] || {});
}

Effect.Combo = function(element) {
  element = $(element);
  if(element.style.display == 'none') { new Effect.OpenUp(element, arguments[1] || {}); }
  else { new Effect.CloseDown(element, arguments[1] || {}); }
}

Effect.MoveRight = function(element){
    element = $(element);
    //new Effect.Move (element,{ x: 20, y: 0, mode: 'relative'});
    new Effect.MoveBy (element, y:20, x:20, [options]);
}
*/

// NEW JS
var pointer = 0;
var visibles = 3; // 3 elements visible
var step = 100;	// slide 100px at a time (will be changed by init_scrollers)
var free = true;

//function init_scroll(){
//    var scrollers = document.getElementsByClassName("scroller-container");
//    if(scrollers){
//        for(i=0;i<scrollers.length;i++){
//            var list = scrollers[i].getElementsByTagName("li");
//            var list_count = list.length;
//            var list_width = Element.getStyle(list[0], 'width');
//            list_width = list_width.replace(/px/,"");
//            var step = list_width * visibles;
//            
//            // Prev button
//			var elem = document.createElement('a');
//			elem.className = 'prev';
//			elem.href = '#';
//			elem.title = '< More Games';
//			elem.innerHTML = '< Previous';			
//			if(scrollers[i].hasChildNodes()) {
//				scrollers[i].insertBefore(elem,scrollers[i].firstChild);
//			} else {
//				scrollers[i].appendChild(elem);
//			}
//			elem.onclick = function() {
//				goto_prev(step, visibles, list_count, this);
//				return false;
//			}
//			
//			// Next button
//			var elem = document.createElement('a');
//			elem.className = 'next';
//			elem.href = '#';
//			elem.title = 'More Games >';
//			elem.innerHTML = 'Next >';
//			scrollers[i].appendChild(elem);
//			elem.onclick = function() {
//				goto_next(step, visibles, list_count, this);
//				return false;
//			}
//        }
//    }
//    else{
//        alert("No scroller-container found.");
//    }
//}

function goto_next(step, visibles, li_count, elem) 
{
	if(free == true) {
		// Voodoo magic
		if(pointer + visibles < li_count) {
			var parentElem = elem.parentNode;
			var scroller = parentElem.getElementsByTagName('ul')[0];
			if((pointer + visibles) > (li_count-visibles)) {
				var old_pointer = pointer; // 6 = 6
				pointer = li_count-visibles; // 7 = 10 - 3
				var foo =  step / visibles; // 240 = 960 / 3			
				step = (pointer - old_pointer) * foo; // 240 = (7 - 6) * 240
			} else {
				pointer += visibles;
			}
			free = false;
			//new Effect.Move(scroller, {y:0, x:-step, duration: 0.7, afterFinish: function() { free = true; }});
			new Effect.MoveBy (scroller, 0, -step, {afterFinish: function(){free=true;}});
		}
	}
//new Effect.MoveBy( 'scroll', 0, 100, {duration: 0.5} );
}
function goto_prev(step, visibles, li_count, elem) 
{
	if(free == true) {
		// Voodoo magic in reverse
		if(pointer > 0) {
			var parentElem = elem.parentNode;
			var scroller = parentElem.getElementsByTagName('ul')[0];
			
			if((pointer - visibles) < 0) {
			
				var foo =  step / visibles;
				step = (pointer * foo);
				
				pointer = 0;
			} else {
				pointer -= visibles;
			}
			free = false;
			//new Effect.Move(scroller, {y:0, x:step, duration: 0.7, afterFinish: function() { free = true; }});
			new Effect.MoveBy (scroller, 0, step, {afterFinish: function(){free=true;}});
		}
	}
}
