document.write("<style type='text/css'> #mainphoto {visibility:hidden;} </style>");

function initImage() {
  imageId = 'mainphoto';
  image = document.getElementById(imageId);
  setObjOpacity(image, 0);
  image.style.visibility = 'visible';
  fadeIn(imageId, 0, 5);
}

function fadeIn(objId, opacity, opacity_step) {
  if (opacity > 100)
    opacity = 100;
  if (document.getElementById) {
    obj = document.getElementById(objId);
    if (opacity <= 100) {
      setObjOpacity(obj, opacity);
      opacity += opacity_step;
      window.setTimeout("fadeIn('"+objId+"',"+opacity+", "+opacity_step+")", 30);
    }
  }
}

function fadeFromTo(objId, opacity_from, opacity_to, opacity_step) {
  if (document.getElementById) {
    obj = document.getElementById(objId);
    // Wait if current opacity is not the specified original opacity
    if (getOpacity(objId) && opacity_from != getOpacity(objId)) {
      window.setTimeout("fadeFromTo('"+objId+"',"+opacity_from+", "+opacity_to+", " +opacity_step+ ")", 200);
    } else {
	  fadeFromTo_body(objId, opacity_from, opacity_to, opacity_step);
    }
  }
}

function fadeFromTo_body(objId, opacity_from, opacity_to, opacity_step) {
  if (document.getElementById) {
    obj = document.getElementById(objId);
    if (opacity_from < opacity_to)
      opacity_from += opacity_step;
    if (opacity_from > opacity_to)
      opacity_from -= opacity_step;
    if (Math.abs(opacity_from - opacity_to) < opacity_step)
      opacity_from = opacity_to;
    setObjOpacity(obj, opacity_from);
    if (opacity_from != opacity_to)
      window.setTimeout("fadeFromTo_body('"+objId+"',"+opacity_from+", "+opacity_to+", " +opacity_step+ ")", 30);
  }
}

function setObjOpacity(obj, opacity) {
  if (opacity > 100)
    opacity = 100;
  else if (opacity < 0)
    opacity = 0;
  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;
}

function setOpacity(objId, opacity) {
  if (document.getElementById) {
    setObjOpacity(document.getElementById(objId), opacity);
  }
}

function getOpacity(objId) {
  var opacity = 100;
  if (document.getElementById) {
    obj = document.getElementById(objId);
    if (undefined === obj.style.opacity)
      return false;
    else
      opacity = obj.style.opacity * 100;
  }
  if (Math.abs(opacity - 100) < 0.1)
    opacity = 100;
  return opacity;
}

window.onload = function() {initImage()}
