// various reuseable functions and global constants

var delay = 10;  // number of seconds between image swaps

function rand(min, max)
{
	return Math.floor((Math.random()*(max-min+1))+min);
}

// Taken from http://clagnut.com/sandbox/imagefades/
// The setOpacity function is passed an object and an opacity value. 
// It then sets the opacity of the supplied object using four proprietary ways. 
// It also prevents a flicker in Firefox caused when opacity is set to 100%, 
// by setting the value to 99.999% instead.

function initImage(imgid) {
	imageId = imgid;
	image = document.getElementById(imageId);
	setOpacity(image, 0);
	fadeIn(imageId,0);
}

function setOpacity(obj, opacity) {
  opacity = (opacity == 100)?99.999:opacity;
  
  // IE/Win
  obj.style.filter = "alpha(opacity:"+opacity+")";
  
  // Safari<1.2, Konqueror
  obj.style.KHTMLOpacity = opacity/100;
  
  // Older Mozilla and Firefox
  obj.style.MozOpacity = opacity/100;
  
  // Safari 1.2, newer Firefox and Mozilla, CSS3
  obj.style.opacity = opacity/100;
}

// The fadeIn function uses a Timeout to call itself every 100ms with an object Id and an opacity.
// The opacity is specified as a percentage and increased 10% at a time.
// The loop stops once the opacity reaches 100%:

function fadeIn(objId,opacity) {
  if (document.getElementById) {
    obj = document.getElementById(objId);
    if (opacity <= 100) {
      setOpacity(obj, opacity);
      opacity += 1;
      window.setTimeout("fadeIn('"+objId+"',"+opacity+")", 20);
    }
  }
}

function fadeOut(objId,opacity) {
  if (document.getElementById) {
    obj = document.getElementById(objId);
    if (opacity > 0) {
      opacity -= 1;
      setOpacity(obj, opacity);
      window.setTimeout("fadeOut('"+objId+"',"+opacity+")", 20);
    }
  }
}

