// JavaScript Document


function SetOpacity(elem, opacityAsInt){
     var opacityAsDecimal = opacityAsInt;
     
     if (opacityAsInt > 100)
         opacityAsInt = opacityAsDecimal = 100; 
     else if (opacityAsInt < 0)
         opacityAsInt = opacityAsDecimal = 0; 
     
     opacityAsDecimal /= 100;
     if (opacityAsInt < 1)
         opacityAsInt = 1; // IE7 bug, text smoothing cuts out if 0
     
     elem.style.opacity = (opacityAsDecimal);
     elem.style.filter  = "alpha(opacity=" + opacityAsInt + ")";
}

function FadeOpacity(elemId, fromOpacity, toOpacity, time, fps){
     var steps = Math.ceil(fps * (time / 1000));
     var delta = (toOpacity - fromOpacity) / steps;
     
    FadeOpacityStep(elemId, 0, steps, fromOpacity,delta, (time / steps));
}
 
function FadeOpacityStep(elemId, stepNum, steps, fromOpacity, delta, timePerStep){
     SetOpacity(document.getElementById(elemId),Math.round(parseInt(fromOpacity) + (delta * stepNum)));
     if (stepNum < steps){
         setTimeout("FadeOpacityStep('" + elemId + "', " + (stepNum+1) + ", " + steps + ", " + fromOpacity + ", " + delta + ", " + timePerStep + ");",timePerStep);
	}
}
