// This javascript is used to show and hide div layers

var imagePeekTimer = null;

var rollersData = new Array();

function nextInRoller( rollerIndex )
{
	curpos = rollersData[rollerIndex]['position'];
	// Next position
	rollersData[rollerIndex]['position'] = (rollersData[rollerIndex]['position']+1)%rollersData[rollerIndex]['elements'].length;
	nextpos = rollersData[rollerIndex]['position'];

	hideElement( rollersData[rollerIndex]['elements'][curpos] );
	showElement( rollersData[rollerIndex]['elements'][nextpos] );
}

function startRoller( rollerArray , delay )
{
	len = rollersData.length;
	rollersData[len] = new Array();
	rollersData[len]['elements'] = rollerArray;
	rollersData[len]['position'] = 0;
	showElement( rollersData[len]['elements'][ rollersData[len]['position'] ] );
	setInterval( 'nextInRoller('+len+')' , delay );
}

function setElementValue(id , value)
{
 var el = document.getElementById(id);
 if ( el != null )
        el.value = value;
}

function showElement( id )
{
	var el = document.getElementById( id );
	if ( el != null ) 
		el.style.display = "block";
}

function hideElement( id )
{
	var el = document.getElementById( id );
	if ( el != null ) 
		el.style.display = "none";
}

function toggleElementVisibility( id ){
        var el = document.getElementById( id );
        if ( el != null ) {
                if ( el.style.display == "none" ){
                        showElement( id );
                } else {
                        hideElement( id );
                }
	}
}

function showLayer(layerName, shadowLayerName)
{
            if (document.getElementById) // Netscape 6 and IE 5+
            {
                var targetElement = document.getElementById(layerName);
                var shadowElement = document.getElementById(shadowLayerName);
                targetElement.style.top = shadowElement.style.top;
                targetElement.style.visibility = 'visible';
            }
}

function hideLayer(layerName)
{
            if (document.getElementById) 
            {
                var targetElement = document.getElementById(layerName);
                targetElement.style.visibility = 'hidden';
            }
}

function setElementVisibility( elementId, hidden )
{
	var el = document.getElementById( elementId );
	if ( el != null )
	{
		if ( hidden == true )
			el.style.visibility = 'hidden';
		else
			el.style.visibility = 'visible';
	}
}

// Stop the possible timers and set timer to null.
function stopImagePeekTimer()
{
	if ( imagePeekTimer != null ) {
		clearTimeout(imagePeekTimer);
		imagePeekTimer = null;
	}

}

function showImage( imageUrl , maxWidth)
{
	stopImagePeekTimer();

	var el = document.getElementById( "peekImageDivBody" );
	if ( el != null )
	{
		if ( maxWidth == null || maxWidth == undefined ) maxWidth = "200";

		el.innerHTML = '<img width="'+maxWidth+'" src="'+imageUrl+'">';
		var el2 = document.getElementById( "peekImageDiv" );
		if ( el2 != null ) {
			el2.style.left = -maxWidth/2 +"px";
		}

	}
	setElementVisibility( "peekImageDiv" , false );
	imagePeekTimer = setTimeout("setElementVisibility('peekImageDiv',true);",3000);
}

