/* 

	jScroll v1.0
	written by Jasper Heidebrink
	28 - 10 - 2010
	
	Fill in the basic vars of the scroller.
	The html must contain a holder and a container within the scroller
	
*/

this.jScroll = function( id, navId ) {
	
	if ( undefined == id ) {
		var id		= "aanbodScroller";			// id of the container element 
	}
	if ( undefined == navId ) {
		var navId	= Array("hp_up", "hp_down");	// id for each navigation button (OPTIONAL)
	}
	
	
	
	// set the container of the scroller
	var obj 	= $("#"+id+" .scrollerContainer");
	obj.h		= 200;							// desired height of the container element (in pixels)
	obj.speed	= 5;							// movement speed
	obj.up 		= false;
	obj.down	= false;
	obj.css({ position:"absolute", 'top': '0px', 'width': $("#"+id).css('width') });
	
	// set the holder of the scroller
	$("#"+id).css({ position:"relative", 'height': obj.h+"px", overflow:"hidden"});
	
	// set the real functions	
	$("#"+navId[0]).hover( function() {
			var top 		= Number(obj.css('top').substring(0, obj.css('top').length -2));
			if ( top < 0 ) {
				$(this).addClass("over");
				obj.up 			= true;
				obj.interval	= setInterval(	function() {
												var objHeight	= Number(obj.height());
												var top 		= Number(obj.css('top').substring(0, obj.css('top').length -2));
												if(obj.up) {		 
													newTop = (top < 0) ? top+obj.speed : top;
													obj.css({ top: newTop + "px" });
												};
											}, 50);
			}
		},
		function(){
			obj.up 			= false;
			$(this).removeClass("over");
			clearInterval( obj.interval );
			obj.interval	= null;
	});
		
	$("#"+navId[1]).hover( function() {
			var objHeight	= Number(obj.height());
			var top 		= Number(obj.css('top').substring(0, obj.css('top').length -2));
			if ((objHeight+top) > obj.h ) {
				obj.down 		= true;
				$(this).addClass("over");
				// alert( (objHeight+top) +":"+ obj.h );
				obj.interval	= setInterval(	function() {
												var objHeight	= Number(obj.height());
												var top 		= Number(obj.css('top').substring(0, obj.css('top').length -2));
												if(obj.down) {
													var newTop = ((objHeight+top) > obj.h )? top-obj.speed : top;
													obj.css({ top: newTop + "px" });
												};
											}, 50);
			}
		},
		function(){
			obj.down 		= false;
			$(this).removeClass("over");
			// alert( "clearInterval" );
			clearInterval( obj.interval );
			obj.interval	= null;
	});
	
	
	// the listner	
	function start () {
		// var obj = this.parent;
		// alert( obj );
		var objHeight	= Number(obj.height());
		var top 		= Number(obj.css('top').substring(0, obj.css('top').length -2));
		if(obj.down) {
			var newTop = ((objHeight+top) > obj.h )? top-obj.speed : top;
			obj.css({ top: newTop + "px" });
		};	
		if(obj.up) {		 
			newTop = (top < 0) ? top+speed : top;
			obj.css({ top: newTop + "px" });
		};
	};	
	
};

