var displayDivID='displayScreen';
var bufferDivID='displayItem_';
var bufferDivIndex=0;
var delaySeconds=5;

var displayEffect='HSCROLL';

var displayEffect='VSCROLL';
var displayEffect='FADE';
 
var onColour='0';
var offColour='255';
function runDisplay(){
	 
	if (getItemCount() < 2) return;

	if (displayEffect=='FADE') window.setTimeout('fadeOut()',  delaySeconds * 1000);
    else if (displayEffect=='COLOUR') window.setTimeout('colourFadeOut()',  delaySeconds * 1000);
    else if (displayEffect=='VSCROLL') window.setTimeout('vScroll()',  delaySeconds * 1000);
	else if (displayEffect=='HSCROLL') window.setTimeout('hScroll()',  delaySeconds * 1000);
	
}

function hScroll(){
	var elCurrentItem = getCurrentItem();
	var elNextItem = getNextItem();
	var elMain = document.getElementById(displayDivID );
	//elMain.innerHTML = '<div class="displayItem">' + elCurrentItem.innerHTML + '</div><div class="displayItem" style="float:right;">' + elNextItem.innerHTML + "</div>";
 
 	var elWidth =  elMain.offsetWidth  ;
	 
	var timer = 0;
	millisec=2500;
	var speed = Math.round(millisec / 100);
	for(i = 0; i <  elWidth; i++) {
		setTimeout("scrollLeft(" + i + ")",(timer * speed));
        timer++;
    }
		
	
	window.setTimeout('hScroll()',  delaySeconds * 1000);
}
function scrollLeft(offset){
	var elMain = document.getElementById(displayDivID );
	 
}

function vScroll(){
	var elCurrentItem = getCurrentItem();
	var elNextItem = getNextItem();
	var elMain = document.getElementById(displayDivID );
	elMain.innerHTML = '<div class="displayItem">' + elCurrentItem.innerHTML + '</div><div class="displayItem">' + elNextItem.innerHTML + "</div>";
	
	var elHeight =  elMain.offsetHeight  ;
	var timer = 0;
	millisec=2500;
	var speed = Math.round(millisec / 100);
	for(i = 0; i <  elHeight; i++) {
		setTimeout("scrollUp(" + i + ")",(timer * speed));
        timer++;
    }
		
	
	window.setTimeout('vScroll()',  delaySeconds * 1000);
}

function scrollUp(offset){
	var elMain = document.getElementById(displayDivID );
	elMain.scrollTop = offset;
}

function colourFadeOut(){
 	colour(displayDivID, onColour,  offColour, 500)
	window.setTimeout('colourFadeIn()',  1000);
}
function colourFadeIn(){
	var elItem = getNextItem();
	var elMain = document.getElementById(displayDivID );
	elMain.innerHTML = elItem.innerHTML;

	colour(displayDivID, offColour,  onColour, 500)
	delayTimer = window.setTimeout('colourFadeOut()', (delaySeconds + 1) *  1000 );
}
function colour(id, colStart, colEnd, millisec) {
    //speed for each frame
    var speed = Math.round(millisec / 100);
    var timer = 0;

    //determine the direction for the blending, if start and end are the same nothing happens
    if(colStart > colEnd) {
        for(i = colStart; i >= colEnd; i=i-5) {
            setTimeout("changeColour(" + i + ",'" + id + "')",(timer * speed));
            timer++;
        }
    } else if(colStart < colEnd) {
        for(i = colStart; i <= colEnd; i=i+5)
            {
            setTimeout("changeColour(" + i + ",'" + id + "')",(timer * speed));
            timer++;
        }
    }
}
function changeColour(colour, id) {
    var object = document.getElementById(id) ;
    object.style.color='rgb(' + colour + ',' + colour + ','+ colour + ')' ;

}


function fadeOut(){
	opacity(displayDivID, 100, 0, 500)
	window.setTimeout('fadeIn()',  1000);
}
function fadeIn(){
	var elItem = getNextItem();
	var elMain = document.getElementById(displayDivID );
	elMain.innerHTML = elItem.innerHTML;

	opacity(displayDivID, 0, 100, 500)
	delayTimer = window.setTimeout('fadeOut()', (delaySeconds + 1) *  1000 );
}

function getCurrentItem(){
 
	var elItem = document.getElementById(bufferDivID + bufferDivIndex);
 
	return (elItem);
}
function getNextItem(){
	bufferDivIndex++;
	
	var elItem = document.getElementById(bufferDivID + bufferDivIndex);
	if (! elItem){
		bufferDivIndex = 0;
		elItem = document.getElementById(bufferDivID + bufferDivIndex);
	}
	return (elItem);
}
function getItemCount(){
	var tempIndex=0;
	
	while ( elItem = document.getElementById(bufferDivID + tempIndex)){
		tempIndex++;
	}
 
	return (tempIndex );
}	


 function opacity(id, opacStart, opacEnd, millisec) {
    //speed for each frame
    var speed = Math.round(millisec / 100);
    var timer = 0;

    //determine the direction for the blending, if start and end are the same nothing happens
    if(opacStart > opacEnd) {
        for(i = opacStart; i >= opacEnd; i--) {
            setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
            timer++;
        }
    } else if(opacStart < opacEnd) {
        for(i = opacStart; i <= opacEnd; i++)
            {
            setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
            timer++;
        }
    }
}

//change the opacity for different browsers
function changeOpac(opacity, id) {
    var object = document.getElementById(id).style;
    object.opacity = (opacity / 100);
    object.MozOpacity = (opacity / 100);
    object.KhtmlOpacity = (opacity / 100);
    object.filter = "alpha(opacity=" + opacity + ")";
    if ( opacity==100)   object.filter = '';
} 
