/* $Id: fade.js,v 1.5 2006/03/20 12:07:36 hg Exp $ */
function fade_add(n,useDisplay){
var fadeConfOK,fading;
var display=useDisplay;
n.fade=function(to){
to=Math.min(Math.max(to,0),1);
if(!fadeConfOK){
if(display && this.style.visibility=='hidden'){this.style.display='none';this.style.visibility='visible'}
if(!display && this.style.display=='none'){this.style.visibility=='hidden';this.style.display='block'}
this.opacity=(this.style.display=='none'||this.style.visibility=='hidden')?0:(this.opacity==null)?1:this.opacity;
this.fadeStep=Math.max((isNaN(this.fadeStep))?0.05:this.fadeStep,0);
this.fadeInt=Math.max(this.fadeInt,50);
fadeConfOK=true;
}
if(!this.fadeIsRunning){
this.fadeIsRunning=true;
if (this.onFadeStart) this.onFadeStart();
}
if(this.opacity==to){
if (this.onFadeEnd) this.onFadeEnd();
this.fadeIsRunning=false;
return;
}else if(this.opacity<to)this.setOpacity(Math.min(to,this.opacity+=this.fadeStep));
else this.setOpacity(Math.max(to,this.opacity-=this.fadeStep));
clearTimeout(fading);
fading=setTimeout('document.getElementById("'+getId(this)+'").fade('+to+')',this.fadeInt);
return;
}
n.setOpacity=function(to){
this.opacity=(!to || isNaN(to))?0:to;
if(display){
if(this.style.display=='none'&&this.opacity>0)this.style.display='block';
if(this.style.display!='none'&&this.opacity<=0)this.style.display='none';
}else{
if(this.style.visibility=='hidden'&&this.opacity>0)this.style.visibility='visible';
if(this.style.visibility!='hidden'&&this.opacity<=0)this.style.visibility='hidden';
}
if(bw.ie)this.style.filter="alpha(opacity="+(this.opacity*100)+")";
else this.style.MozOpacity=this.opacity;
}
}
function fade_RegFadeIn(e){
fade_add(e);
if(isNaN(e.opacity))e.setOpacity(0);
else e.setOpacity(e.opacity);
clearTimeout(e.fading);
e.fading=setTimeout('document.getElementById("'+getId(e)+'").fade(1)',300);
}
