
/* 
///////////////////////////////////////
	NEWS TICKER
/////////////////////////////////////// */

/* Config */

var intSlideTime = 100;			// timeout of transition
var intPauseTime = 5000;		// timeout for pause
var intSlideHeight = 24;		// slider window height
var intSlideSpeed = 1;			// scroller's speed
var intNewsItems = 3;			// number of news items displayed
intNewsCount = 1;				// current count of news items displayed

// Begin the ticker code
var intResumeSpeed = intSlideSpeed;

/* 
///////////////////////////////////////
	FUNCTIONS
/////////////////////////////////////// */

function news_ticker() {	
	if (document.all) {
		boolIE = 1;
		iemarquee(articles);
	} else if (document.getElementById) {
		boolIE = 0;
		ns6marquee(document.getElementById('articles'));
	}
}

function iemarquee(strDivId) {
	
	objDiv = eval(strDivId);
	objDiv.style.top = 0;
	intDivSize = objDiv.offsetHeight;
	setTimeout("state(2)", intPauseTime);
}

function ieslide() {
	if (parseInt(objDiv.style.pixelTop) >= intDivSize * (-1)) {
		intTopPos = parseInt(objDiv.style.pixelTop) - intSlideSpeed;
		objDiv.style.pixelTop = intTopPos;
		boolReset = 0;
		if (!(intTopPos % intSlideHeight)) {
			state(0);	// freeze the slider
			intNewsCount++;
			if (intNewsCount <= intNewsItems) {
				setTimeout("state(2)", intPauseTime);
			} else {
				// reset the list + vars
				if(intNewsCount > intNewsItems) {
					intNewsCount = 0;
					boolReset = 0;
					objDiv.style.top = intSlideHeight;
					setTimeout("ieslide()", intSlideTime);
				} else {
					setTimeout("state(2)", intPauseTime);	// slide out last item
				}
			}
		} else {
			setTimeout("ieslide()", intSlideTime);	// slide out item
		}
	}
}

function ns6marquee(strDivId) {
	objDiv = eval(strDivId);
	objDiv.style.top = "0px";
	intDivSize = objDiv.offsetHeight;
	setTimeout("state(2)", intPauseTime);
}

function ns6slide() {
	if (parseInt(objDiv.style.top) >= intDivSize * (-1)) {
		intTopPos = parseInt(objDiv.style.top) - intSlideSpeed;
 		objDiv.style.top = intTopPos + "px";
		boolReset = 0;
		if (!(intTopPos % intSlideHeight)) {
			
			state(0);	// freeze the slider
			intNewsCount++;
			if (intNewsCount < intNewsItems) {
				setTimeout("state(2)", intPauseTime);
			} else {
				// reset the list
				if(intNewsCount > intNewsItems) {
					intNewsCount = 0;
					boolReset = 0;
					objDiv.style.top = intSlideHeight + "px";
					setTimeout("ns6slide()", intSlideTime);
				} else {
					setTimeout("state(2)", intPauseTime);	// slide out last item
				}
			}
		} else {
			setTimeout("ns6slide()", intSlideTime);
		}
	}
}

function state(action){
	if (action == 1) {
		intSlideSpeed = 0;
	} else if (action == 2) {
		intSlideSpeed = intResumeSpeed;
		if (boolIE) {
			ieslide();
		} else {
			ns6slide();
		}
	} else {
		intSlideSpeed = intResumeSpeed;
	}
}
