var rollerTimeout = 0;
Effects = {};
Effects.fade = function(id, opacStart, opacEnd, duration, callback)
{

	//Effects.changeOpacity(0, id);
	var speed = Math.round(duration/10);
	var timer = 0;

	if(opacStart > opacEnd)
	{
		for(var i=opacStart; i>=opacEnd; i-=10)
		{
			setTimeout("Effects.changeOpacity("+ i +", '"+ id +"', "+ opacEnd +", '"+ callback +"')", (timer*speed));
			timer++;
		}
	}
	else if(opacStart < opacEnd)
	{
		for(var i=opacStart; i<=opacEnd; i+=10)
		{
			setTimeout("Effects.changeOpacity("+ i +", '"+ id +"', "+ opacEnd +", '"+ callback +"')", (timer*speed));
			timer++;
		}
	}
}

Effects.changeOpacity = function(opacity, id, endPoint, callback)
{
	var _style = document.getElementById(id).style;
	if ( window.ie )
	{
	    _style.filter = "alpha(opacity=" + opacity + ")";
		_style.zoom = 1;
	}
	else
	{
	    _style.opacity = (opacity / 100);
	    _style.MozOpacity = (opacity / 100);
	    _style.KhtmlOpacity = (opacity / 100);
	}
	if(opacity == endPoint && callback != null)
	{
		if ( window.ie && endPoint == 100 )
		{
			_style.filter = "none";
		}
		eval(callback);
	}
}



Effects.onFaded = function()
{
	// Add callback code here
}

function rollerGo( delta )
{
	clearTimeout(rollerTimeout);
	var oldId = current_roller_id;
	current_roller_id = current_roller_id + delta;
	if ( current_roller_id == 0 ) current_roller_id = last_roller_id;
	if ( current_roller_id > last_roller_id ) current_roller_id = 1;
	rollerHide();
}

function rollerHide()
{
	Effects.fade('roller_master', 100, 0, 400, 'rollerShow()');
}

function rollerShow()
{
	Effects.changeOpacity(0, 'roller_roll_'+current_roller_id, 1, '');
	document.getElementById( 'roller_master' ).innerHTML = document.getElementById( 'roller_roll_'+current_roller_id ).innerHTML;
	Effects.fade('roller_master', 0, 100, 400, 'Effects.onFaded()');
	rollerTimeout = setTimeout('rollerGo(1)',5000);
}