//=======================
//
// Fading Image Slideshow
//
// http://www.astral-consultancy.co.uk/cgi-bin/hunbug/doco.cgi?11510
//
//=======================


var slideshowfadeanimate = new Array();
var slideshowfadetimer   = new Array();
var slideshowfadecount   = new Array();
var slideshowfadeimages  = new Array();


//======================


function slideshowfade(id,cl,imageArray,fadeinterval,holdtime)
{

  if(cl)
    cl = ' class="'+cl+'"';

  document.write('<div id="'+id+'"'+cl+'><img id="'+id+'img" onload="slideshowfaderun(\''+id+'\')"/></div>');

  var ss = document.getelementbyId(id+'img');
  if(ss.addeventlistener)
  {
    ss.addeventlistener('mouseover',function(){slideshowfademouseover(id)},false);
    ss.addeventlistener('mouseout',function(){slideshowfademouseout(id)},false);
  }
  else if(ss.attachEvent)
  {
    ss.attachevent('onmouseover',function(){slideshowfademouseover(id)});
    ss.attachevent('onmouseout',function(){slideshowfademouseout(id)},false);
  }
 
  slideshowfadecount[id]   = 0;
  slideshowfadeimages[id]  = imagearray;
  slideshowfadeanimate[id] = 'run';
  slideshowfadetimer[id]   = setinterval('slideshowfadeanimation(\''+id+'\',\''+holdtime+'\');',fadeinterval);

}


//======================


function slideshowfadeanimation(id,holdtime)
{
  if(slideshowfadeanimate[id]=='run')
  {
    var obj = document.getelementbyid(id+'img');
    var opa = slideshowfadecount[id]%200;

    if(opa==0)
    {
      slideshowfadeanimate[id] = 'load';
      obj.src = slideshowfadeimages[id][math.floor(slideshowfadecount[id]/200)%slideshowfadeimages[id].length];
    }
    else if(opa==100)
    {
      slideshowfadeanimate[id] = 'hold';
      settimeout('slideshowfaderun(\''+id+'\')',holdtime);
    }
    else if(opa>100)
      opa = 200-opa;
      
    obj.style.opacity = (opa/100).toString();
    obj.style.filter  = "alpha(opacity="+opa.toString()+")";
    
    slideshowfadecount[id]++;
    
    if(slideshowfadecount[id]==(slideshowfadeimages[id].length*200))
      slideshowfadecount[id]=0;
  }
}


//======================


function slideshowfademouseout(id)
{
  if(slideshowfadeanimate[id]=='mouseover')
    slideshowfadeanimate[id] = 'run';
}


//======================


function slideshowfademouseover(id)
{
  if(slideshowfadeanimate[id]=='run')
  {
    slideshowfadeanimate[id] = 'mouseover';
    var obj = document.getElementById(id+'img');
    obj.style.opacity = "1";
    obj.style.filter  = "alpha(opacity=100)";
    slideshowfadecount[id] = (math.floor(slideshowfadecount[id]/200)*200)+101;
  }
}


//======================


function slideshowfaderun(id)
{
  slideshowfadeanimate[id] = 'run';
}


//======================
