// JavaScript Document

/**********************************************************************************
		PageScroll
		*   Copyright (C) 2001 <a href="/dhtmlcentral/thomas_brattli.asp">Thomas Brattli</a>
		*   This script was released at DHTMLCentral.com
		*   Visit for more great scripts!
		*   This may be used and changed freely as long as this msg is intact!
		*   We will also appreciate any links you could give us.
		*
		*   Made by <a href="/dhtmlcentral/thomas_brattli.asp">Thomas Brattli</a>
		*********************************************************************************/

		function lib_bwcheck(){ //Browsercheck (needed)
			this.ver=navigator.appVersion
			this.agent=navigator.userAgent
			this.dom=document.getElementById?1:0
			this.opera5=this.agent.indexOf("Opera 5")>-1
			this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom && !this.opera5)?1:0;
			this.ie6=(this.ver.indexOf("MSIE 6")>-1 && this.dom && !this.opera5)?1:0;
			this.ie4=(document.all && !this.dom && !this.opera5)?1:0;
			this.ie=this.ie4||this.ie5||this.ie6
			this.mac=this.agent.indexOf("Mac")>-1
			this.ns6=(this.dom && parseInt(this.ver) >= 5) ?1:0;
			this.ns4=(document.layers && !this.dom)?1:0;
			this.bw=(this.ie6 || this.ie5 || this.ie4 || this.ns4 || this.ns6 || this.opera5)
			return this
		}
		var bw=new lib_bwcheck()


		/*********************************************************************************
		These are the variables you have to set:
		*********************************************************************************/

		//The speed of the timeout between each scroll.
		timSpeed = 50

		//The height of the container (change this when it scrolls to much or to little)
		contHeight = 70
		/*********************************************************************************
		This is the object constructor function, which applies
		methods and properties to the Cross-browser layer object
		*********************************************************************************/
		function makeScrollObj(obj,nest)
		{
			nest=(!nest) ? "":'document.'+nest+'.'
			this.el=bw.dom?document.getElementById(obj):bw.ie4?document.all[obj]:bw.ns4?eval(nest+'document.'+obj):0;
			this.css=bw.dom?document.getElementById(obj).style:bw.ie4?document.all[obj].style:bw.ns4?eval(nest+'document.'+obj):0;
			this.height=bw.ns4?this.css.document.height:this.el.offsetHeight
			this.top=b_gettop
			return this
		}

		// A unit of measure that will be added when setting the position of a layer.
		var px = bw.ns4||window.opera?"":"px";

		//Getting the top for the top method
		function b_gettop(){
			var gleft=(bw.ns4 || bw.ns6)?parseInt(this.css.top):eval(this.css.pixelTop);
			return gleft;
		}
		//Variables
		var scrollTim = 1;
		var active = 0;
		/*********************************************************************************
		The scroll function. Checks what way to scroll and checks if the
		layer is not already on top or bottom.
		*********************************************************************************/
		function scroll(speed){
			clearTimeout(scrollTim)
			way = speed>0?1:0
			if ((!way && oScroll[active].top()>-oScroll[active].height+contHeight) || (oScroll[active].top()<0 && way)){
				oScroll[active].css.top = (oScroll[active].top()+speed)+px
				scrollTim = setTimeout("scroll("+speed+")",timSpeed)
			}
		}
		//Clears the timeout so the scroll stops, this is called onmouseout.
		function noScroll(){
			clearTimeout(scrollTim)
		}
		/*********************************************************************************
		Changes the active layer. Hides the one that's visible and
		shows the "new" one. Also set's the new layers top to
		0 so it starts at top.
		*********************************************************************************/
		function changeActive(num){
			oScroll[active].css.visibility = "hidden"
			active = num
			oScroll[active].css.top = 0+px
			oScroll[active].css.visibility = "visible"
		}
		/*********************************************************************************
		Initilizes the page, makes a oScroll Array and calls the object constructor.
		Here you can add as many scrollObjects as you want
		*********************************************************************************/
		function scrollInit(){
			oScroll = new Array()

			// You can add and remove scrollObjects here.
			oScroll[0] = new makeScrollObj('divScroll1','divCont')

			oScroll[0].css.left = 0+px
			oScroll[0].css.top = 0+px
			oScroll[0].css.visibility = "visible"
			oControl = new makeScrollObj('divControl')
			oControl.css.visibility = "visible"
		}
		/*********************************************************************************
		Executes the scrollInit function on pageload.
		*********************************************************************************/
		onload = scrollInit;

		/***************
		Multiple Scripts
		If you have two or more scripts that use the onload event, probably only one will run (the last one).
		Here is a solution for starting multiple scripts onload:
		   1. Delete or comment out all the onload assignments, onload=initScroll and things like that.
		   2. Put the onload assignments in the body tag like in this example, note that they must have braces ().
		   Example: <body onload="initScroll(); initTooltips(); initMenu();">
		**************/