window.addEvent('domready', function(){
	var Scrollbar = new Class({
			initialize:function(id){
       		this.id = id;
			
			var _mask;
			var _bar;
			var _tracker;
			var _content;	
			var _scrollHeight
			var _percentage;
			var _scrollY;
			
			_mask = $$('div#'+id)[0];
			_bar = _mask.getElement('.scrollboost_bar');
			_tracker = _mask.getElement('.scrollboost_tracker');
			_content = _mask.getElement(".scrollboost_content");
			_scrollHeight = _bar.offsetHeight - _tracker.offsetHeight;
			_percentage = 0;
			_scrollY = 0;
			init();
			
			
			function init() {	
				_tracker.style.cursor = 'pointer';			
				if(Browser.Engine.trident) {
					_tracker.style.background = 'none';
					_tracker.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/tracker.png')"
				}
				
				
				if(_content.offsetHeight < _mask.offsetHeight) {
					_tracker.style.visibility = 'hidden';
					return false;
				}
				updateTopPos();

				new Slider(_bar, _tracker, {
				steps: _scrollHeight,
				mode: 'vertical',
				snap:'true',
				onChange: function(steps){
					updateTopPos(steps);
				}
				}).set(0);
				
				//adding the event listerner for Mozilla
				if( window.addEventListener )
					_mask.addEventListener('DOMMouseScroll', updateScrollPos, false);
				//for IE/OPERA etc	
				_mask.onmousewheel = updateScrollPos;
			}
			function updateTopPos(scrollValue){
				_percentage = Math.round(_tracker.offsetTop / _scrollHeight * (_content.offsetHeight - _bar.offsetHeight)) * -1;
				_scrollY = scrollValue;
				_content.style.top = _percentage.toString() + 'px';
			};
			function updateScrollPos(event) {	
				var data;
				
				if (!event) 
					event = window.event;
				
				if(event.wheelDelta) {
					data = event.wheelDelta;
					if( data > 0) {
						_scrollY -= 30;
					} else if(data < 0) {
						_scrollY += 30;
					}
				} else if(event.detail) {
					data = event.detail;
					if( data > 0) {
						_scrollY += 30;
					} else if(data < 0) {
						_scrollY -= 30;
					}
				}		
				if(_scrollY <= 0) {
					_scrollY = 0;
				} else if (_scrollY >= _scrollHeight) {
					_scrollY = _scrollHeight;
				}		
				_tracker.style.top = _scrollY.toString() + 'px';
				updateTopPos(_scrollY);
			}
		}
	});
	var ContentScrollbar = new Scrollbar("contentscroll");
	var ContentScrollbar = new Scrollbar("sidebarscroll");
})
