// Variables
var scrolling 	= null;
var speed 		= 0;
var speedMax 	= 2;
var speedAdd	= 0.1;
var interval 	= 20;

// Functions
// - Scroll up
function scroll_up() {
	var d = document.getElementById('scrollcontainer');
	d.scrollTop = d.scrollTop - -speed;
	scrolling = window.setTimeout(function() {
		if(speed > -speedMax){
			speed = speed - speedAdd;
		}
		scroll_up(); 
	}, interval);
}
	
//- Scroll down
function scroll_down() {
	var d = document.getElementById('scrollcontainer');
	d.scrollTop = d.scrollTop + speed;
	scrolling = window.setTimeout(function() {
		if(speed < speedMax){
			speed = speed + speedAdd ;
		}
		scroll_down();
	}, interval);
}

// - Scroll stop
function stop_scroll() {
	window.clearTimeout(scrolling);
	speed = 0;
}

//- Mousewheel event
function mouseWheel(event){
	var d = document.getElementById('scrollcontainer');
	var rolled = 0;
	
	if(event.wheelDelta == undefined){
		rolled = -40 * event.detail;
	} else {
		rolled = event.wheelDelta;
	}
	
	if(rolled > 0){
		speed--;
		d.scrollTop = d.scrollTop - 10;
	} else {
		speed++;
		d.scrollTop = d.scrollTop + 10;
	}
}

// - initialize
function Init(){
	if (window.addEventListener){
		window.addEventListener('DOMMouseScroll', mouseWheel, false);
		window.onmousewheel = document.onmousewheel = mouseWheel;
	}
}
