function opacity(id, opacStart, opacEnd, millisec) { 

    var object = document.getElementById(id).style; 
    if (object.opacity == (opacEnd / 100))
		return;

    //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-=5) { 
            setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed)); 
            timer+=5; 
        } 
    } else if(opacStart < opacEnd) { 
        for(i = opacStart; i <= opacEnd; i+=5) 
            { 
            setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed)); 
            timer+=5; 
        } 
    } 
} 

//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 + ")"; 
}

var _rotatorImages;
var _rotatorSwapDelay;
var _rotatorFadeDelay;
var _rotatorCreated = false;
var _rotatorIndex = 0;
var _rotatorWidth;
var _rotatorHeight;


function createRotator(images, width, height, swapdelay, fadedelay)
{
   if (_rotatorCreated)
   {
      alert("Multiple rotator is not supported");
      return;
   }
   _rotatorCreated = true;

   _rotatorImages      = images;
   _rotatorWidth       = width;
   _rotatorHeight      = height;
   _rotatorSwapDelay   = swapdelay;
   _rotatorFadeDelay   = fadedelay;
   _rotatorIndex       = 0;

   document.write("<img id=\"rotator_img\" src=\"" + _rotatorImages[0] + "\" style=\"width: " + width + ";height:" + height + ";clear: both;\"><br/>");
   document.write("<img id=\"rotator_img_fade\" style=\"z-index: 1; width:" + width + ";height:" + height + ";position: absolute; top: 0px;\">");
   changeOpac(0, "rotator_img_fade");

   setTimeout(rotateImage, _rotatorSwapDelay);
}

function rotateImage()
{
   _rotatorIndex++;
   if (_rotatorIndex > (_rotatorImages.length - 1))
      _rotatorIndex = 0;

   var imgObject = document.getElementById("rotator_img");
   var imgFadeObject = document.getElementById("rotator_img_fade");
   imgFadeObject.src = imgObject.src;
   changeOpac(100, "rotator_img_fade");

   setTimeout(fade, 500); 
}

function fade()
{
   var imgObject = document.getElementById("rotator_img");
   imgObject.src = _rotatorImages[_rotatorIndex];
   opacity("rotator_img_fade", 100, 0, _rotatorFadeDelay);
   setTimeout(rotateImage, _rotatorSwapDelay - 500);
}
