// JavaScript Document

function Scroller(divID, startY){
	this.interval=0;
	this.startY = startY ;
	this.gRef='mb_scroller';
	eval(this.gRef+"=this");
	this.id = divID;
	this.initScrollbar();
}

Scroller.prototype.initScrollbar = function() {
	this.scrollDiv = document.getElementById( this.id );
	this.scrollbar = document.getElementById( 'scrollbar' );
	if( !this.scrollDiv||!this.scrollbar) {
		setTimeout( this.gRef+".initScrollbar()", 100 );
		return;
	}
	this.container = this.scrollDiv.parentNode;
	this.container.initH = 250;//wysokosc pola tekstu
	this.scrollDiv.style.top = this.startY + 'px';
	with( this.scrollbar.style ) {
		height = this.container.initH*((this.container.initH/1.2)/this.scrollDiv.offsetHeight) + 'px';//oblicza wielkosc suwaka, w zaleznosci od ilosci danych
		//top = this.container.offsetTop+'px';//110px
		top = '135px'; // polozenie suwaka
		left = '740px'; //polozenie suwaka 
		this.scrollbar.initY = parseInt(top);//110
	}
	
	this.scrollbar.onmousedown = function(e){
		
		d=document;
		E=d.documentElement;
		b=d.body;
		
		if(!E)return!1;
		e=(e||event);
		y=-~~(e.layerY||e.offsetY);//pole suwaka wartosci ujemne
		
		d.onmousemove=function(e) {
			e=(e||event);
			with( scroller.scrollbar.style ) {
				t=y+e.clientY+(E.scrollTop||b.scrollTop)-parseInt(60);//wspolrzedna
				if( t < scroller.scrollbar.initY || t>scroller.scrollbar.initY+scroller.container.initH-parseInt(height) ) return;
				top=t+'px'
			}
			scroller.scrollDiv.style.top=10+(scroller.scrollbar.initY*(scroller.scrollDiv.offsetHeight/scroller.container.initH))-t*(scroller.scrollDiv.offsetHeight/scroller.container.initH)+'px';
			return!1;
		}
		d.onmouseup=function(){this.onmousemove=null}
	}
}



Scroller.prototype.goDown = function(s){this.stop();this.interval = setInterval( this.gRef+'.scroll(1,'+s+')',100);}//funkcja do przewijania jak chcemy najezdzac na jakis element
Scroller.prototype.goUp = function(s){this.stop();this.interval = setInterval( this.gRef+'.scroll(-1,'+s+')',100);}
Scroller.prototype.stop = function(){if( this.interval ) clearInterval( this.interval ); }
Scroller.prototype.stopUpDown = function(dir,t) {return ( dir==1 && t >= this.startY ||dir==-1 && t + this.scrollDiv.offsetHeight - this.container.offsetHeight + this.startY+(this.container.offsetHeight*.188) <= this.startY )?true:false;}

scroller = new Scroller( 'divNewsText', 5 );