var divImgs  = new Array();
var cKey     = 0;
var session  = 0;

function initFade()
{
   if (!document.getElementById)
       return;

   divImgs = document.getElementById("slideshow").getElementsByTagName("img");

   divImgs[0].syOpacity = 0;
   for (i = 1; i< divImgs.length; i++)
      divImgs[i].syOpacity = 0;

   session = Math.random();
   setTimeout("startFade(" + session + ")", 4000);
}


function startFade(cSession)
{
   if (session != cSession)
      return;

   divImgs[cKey].style.display = "none";
   divImgs[cKey].syOpacity = 0;
   setOpacity(divImgs[cKey]);

   cKey = divImgs[cKey + 1] ? (cKey + 1) : 0;
   divImgs[cKey].style.display = "block";

   doFade(cSession);
}

function doFade(cSession)
{
   divImgs[cKey].syOpacity  += .05;
   setOpacity(divImgs[cKey]);

   if (divImgs[cKey].syOpacity >= .99)
      setTimeout("startFade(" + cSession + ")", 4000);
   else
      setTimeout("doFade(" + cSession + ")", 50);
}

function fadeForward()
{
   divImgs[cKey].style.display = "none";
   divImgs[cKey].syOpacity = 0;
   setOpacity(divImgs[cKey]);

   cKey = divImgs[cKey + 1] ? (cKey + 1) : 0;
   divImgs[cKey].style.display = "block";

   session = Math.random();
   doFade(session);
}

function fadeBack()
{
   divImgs[cKey].style.display = "none";
   divImgs[cKey].syOpacity = 0;
   setOpacity(divImgs[cKey]);

   cKey = cKey - 1;

   if (cKey == -1)
      while (divImgs[cKey + 1])
         cKey = cKey + 1;

   divImgs[cKey].style.display = "block";

   session = Math.random();
   doFade(session);
}

function setOpacity(obj)
{
   if(obj.syOpacity > .99)
   {
      obj.syOpacity = .99;
      return;
   }

   obj.style.opacity    = obj.syOpacity;
   obj.style.MozOpacity = obj.syOpacity;
   obj.style.filter     = "alpha(opacity=" + (obj.syOpacity * 100) + ")";
}

if (window.addEventListener)
   window.addEventListener("load", initFade, false);
else
   window.attachEvent("onload", initFade);