/**************************************************



Simple DIV-Scroller for modern DOM-capable Browsers



Written by Sebastian Bechtold



sebastian_bechtold@web.de



You may use this script for whatever you want,

but please don't remove this note about its origin.



Thanks :)



**************************************************/



var scrollers = new Array();



function ScrollableLayer(id)

{

	this.contentLayer = document.getElementById(id);

	this.drawerline = document.getElementById('drawerline' + id);

	this.drawer = document.getElementById('drawer' + id);

	this.scrollframe = document.getElementById('scrollframe' + id);

	this.scrollHeight = this.contentLayer.offsetHeight - this.scrollframe.offsetHeight;

	

	this.contentLayer.style.position = 'relative';

	this.scrollframe.style.position = 'relative';

}





function start_scroll(id, speed)

{

	scrollers[id] = new ScrollableLayer(id);



	new_id = id;

	new_speed = speed;



	scrollers[id].timer = window.setInterval("scroll(new_id, new_speed);",20);

}





function stop_scroll(id) 

{

	window.clearInterval(scrollers[id].timer);

}





function scroll(id, speed)

{

	y_new = scrollers[id].contentLayer.offsetTop + speed;



	if (y_new <= 0 && y_new >= -scrollers[id].scrollHeight)

	{

		scrollers[id].contentLayer.style.top = y_new;

	

		if(scrollers[id].drawer && scrollers[id].drawerline)

		{

			scrollers[id].drawer.style.top = scrollers[id].drawerline.offsetTop - (scrollers[id].drawerline.offsetHeight - scrollers[id].drawer.offsetHeight) * (y_new / scrollers[id].scrollHeight);

		}

	}

	else

	{

		height = 0;

		

		if (y_new < -scrollers[id].scrollHeight)

		{

			height = scrollers[id].scrollHeight;

		}



		stop_scroll(id);

		start_scroll(id, height + y_new);

	}

}
