﻿// JScript File


/******************************************
* Scrollable content script II- © Dynamic Drive (www.dynamicdrive.com)
* Visit http://www.dynamicdrive.com/ for full source code
* This notice must stay intact for use
******************************************/


iens6=document.all||document.getElementById;
ns4=document.layers;

//specify speed of scroll (greater=faster)
var speed=5;
var prevSlideVal = 0;

contentHolder=document.getElementById('contentRightContent');
contentScrollElement=document.getElementById('contentScroll');

var moveupvar, movedownvar, moveaddrvar;

function hazeImage(){
	window.event.srcElement.opacity = .5
}
if (ns4){
var crossobj=document.nscontainer.document.nscontent;
var contentheight=crossobj.clip.height;
}
else {
var crossobj=document.getElementById? document.getElementById('contentScroller') : document.all.content;
var contentheight=crossobj.offsetHeight;
}

function gotoAddr() {
	slider.setValueBy(1);
	moveaddrvar=setTimeout("gotoAddr()", 0);
}

function movedown(){
	if (crossobj.offsetHeight > contentHolder.offsetHeight)
	{
		slider.setValueBy(.05);
		movedownvar=setTimeout("movedown()",50)
	}
}

function moveup(){
	if (crossobj.offsetHeight > contentHolder.offsetHeight)
	{
		slider.setValueBy(-.05);
		moveupvar=setTimeout("moveup()",50)
	}
}


function getcontent_height(){
contentScrollElement.visibility="hidden";
if (iens6)
contentheight=crossobj.offsetHeight;
else if (ns4)
document.nscontainer.document.nscontent.visibility="visible";

}
window.onload=getcontent_height;
	// <![CDATA[


// vertical slider control
var slider = new Control.Slider('scrollbarHandle', 'scrollbarTrack', {
	axis: 'vertical',
	startSpan: 'scrollbarFiller',
	onSlide: function(v) { 
		scrollFromSlider(v); 
	},
	onChange: function(v) { scrollFromSlider(v); }
});

function scrollFromSlider(v){
	if (crossobj.offsetHeight > contentHolder.offsetHeight)
	{
		crossobj.style.top=crossobj.offsetHeight*(v/(document.getElementById('contentScroller').offsetHeight/(document.getElementById('contentRightContent').offsetHeight-document.getElementById('contentScroller').offsetHeight)))+"px";
	}
}

// mouse wheel code from http://adomas.org/javascript-mouse-wheel/
function handle(delta) {
	slider.setValueBy(-delta);
}

/** Event handler for mouse wheel event. */
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;
	}
	delta*=.05
	/** 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;
}
/*
	Check to see if our content area requires the scrollbar to be displayed
	and if we are to display it, we will need to add the event listener to see if mouse scrolling occurs
	Otherwise, we don't want the content to scroll, so we stop listening to the event
*/
function setScroll() {
	if (crossobj.offsetHeight > contentHolder.offsetHeight)
	{
		contentScrollElement.visibility='visible';
		// mozilla
		Event.observe('textArea', 'DOMMouseScroll', wheel);

		// IE/Opera
		Event.observe('textArea', 'mousewheel', wheel);
	}
	else
	{
		contentScrollElement.style.visibility='hidden';
		//mozilla
		Event.stopObserving('textArea', 'DOMMouseScroll', wheel);
		// IE/Opera
		Event.stopObserving('textArea', 'mousewheel', wheel);
	}
}

// ]]>

