//We wrap all the code in an object so that it doesn't interfere with any other code
var scroller = {
  init:   function() {
		resetScroller();    
  }
}

function resetScroller(){
	//collect the variables
	
	if(document.getElementById("scrollContent")){
		document.getElementById("scrollArea").style.display = 'block';
		document.getElementById("scrollContent").style.top = "0px";
		document.getElementById("scroller").style.top = "0px";
		scroller.docH = document.getElementById("scrollContent").offsetHeight;
		scroller.contH = document.getElementById("scrollContainer").offsetHeight;
		scroller.scrollAreaH = document.getElementById("scrollArea").offsetHeight;
		  
		//calculate height of scroller and resize the scroller div
		//(however, we make sure that it isn't to small for long pages)
		scroller.scrollH = (scroller.contH * scroller.scrollAreaH) / scroller.docH;
		//if(scroller.scrollH < 15) scroller.scrollH = 15;
		document.getElementById("scroller").style.height = Math.round(scroller.scrollH) + "px";
		
		//what is the effective scroll distance once the scoller's height has been taken into account
		scroller.scrollDist = Math.round(scroller.scrollAreaH-scroller.scrollH);
		
		if(scroller.scrollDist < 1){		
			document.getElementById("scrollArea").style.display = 'none';
		}
		
		//make the scroller div draggable
		Drag.init(document.getElementById("scroller"),null,0,0,-1,scroller.scrollDist);
		
		//add ondrag function
		document.getElementById("scroller").onDrag = function (x,y) {
		  var scrollY = parseInt(document.getElementById("scroller").style.top);
		  var docY = 0 - (scrollY * (scroller.docH - scroller.contH) / scroller.scrollDist);
		  document.getElementById("scrollContent").style.top = docY + "px";
		}
	}
}

onload = scroller.init;