var scroller = {
  init:   function() {

    //collect the variables
    scroller.docH = document.getElementById("content").offsetHeight;
    scroller.contH = document.getElementById("text_container").offsetHeight;
    scroller.scrollAreaH = document.getElementById("scrollArea").offsetHeight;
    scroller.scrollerH = document.getElementById("scroller").offsetHeight;
    
    //alert(scroller.docH);alert(scroller.contH);alert(scroller.scrollAreaH);
    
    //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;
    //what is the effective scroll distance once the scoller's height has been taken into account
    
    scroller.scrollDist = Math.round(scroller.scrollAreaH-scroller.scrollerH);

    //alert(scroller.scrollDist);
    //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("content").style.top = docY + "px";
    }
  }
}

function wheel(event){
    var delta = 0;
    if (!event) /* For IE. */
            event = window.event;
    if (event.wheelDelta) { /* IE/Opera. */
            delta = event.wheelDelta/120;
            /** In Opera 9, delta differs in sign as compared to IE.
             */
            if (window.opera)
                    delta = -delta;
    } else if (event.detail) { /** Mozilla case. */
            /** In Mozilla, sign of delta is different than in IE.
             * Also, delta is multiple of 3.
             */
            delta = -event.detail/3;
    }
    /** If delta is nonzero, handle it.
     * Basically, delta is now positive if wheel was scrolled up,
     * and negative, if wheel was scrolled down.
     */
    if (delta)
            handle(delta);
    /** Prevent default actions caused by mouse wheel.
     * That might be ugly, but we handle scrolls somehow
     * anyway, so don't bother here..
     */
    if (event.preventDefault)
            event.preventDefault();
event.returnValue = false;
}

function handle(delta) {
    if (delta < 0)
    {

    if(0-scroller.docH+scroller.contH <= parseInt(document.getElementById("content").style.top))
    	{
    		Down();
    	}
    }
    else {
    	if(0 >= parseInt(document.getElementById("content").style.top))
    	{
    		Up();
    	}
    }
}

	 
	function Down() {
		s = 30;		
		if(0-scroller.docH+scroller.contH >= parseInt(document.getElementById("content").style.top) - 30)
		{
			document.getElementById("content").style.top = 0-scroller.docH+scroller.contH + "px";
		}
		else
		{
			document.getElementById("content").style.top = parseInt(document.getElementById("content").style.top) - 30 + "px";
		}
		
		v = (scroller.docH - scroller.contH) / s;

		vv = scroller.scrollAreaH / v;
		
		if((scroller.scrollAreaH - 45) < parseInt(document.getElementById("scroller").style.top) + vv)
		{
			document.getElementById("scroller").style.top = (scroller.scrollAreaH - 45) + "px";
		}
		else
		{
			document.getElementById("scroller").style.top = parseInt(document.getElementById("scroller").style.top) + vv + "px";
		}
	}

	function Up() {
		s = 30;
		if(0 <= parseInt(document.getElementById("content").style.top) + 30)
		{
			document.getElementById("content").style.top = 0 + "px";
		}
		else
		{
			document.getElementById("content").style.top = parseInt(document.getElementById("content").style.top) + 30 + "px";
		}
		
		v = (scroller.docH - scroller.contH) / s;
		vv = scroller.scrollAreaH / v;
		
		if(0 > parseInt(document.getElementById("scroller").style.top) - vv)
		{
			document.getElementById("scroller").style.top = 0 + "px";
		}
		else
		{
			document.getElementById("scroller").style.top = parseInt(document.getElementById("scroller").style.top) - vv + "px";
		}
	}
	
	


function swap()
{
	if (document.images)
	{
		for (var x=0; x<swap.arguments.length; x+=2)
		{
			document[swap.arguments[x]].src = swap.arguments[x+1];
		}
	}
}
