var Transparency = 
{
	Collection : [],
	SetOpacity : function ( object, level)
	{
	try{
		if(object.style.filter!=null)
		if(level< 100)
			object.style.filter = "alpha(style=0, opacity="+level+")";
		else
			object.style.filter = "";
		if(object.filters!=null)
			if(object.filters.alpha!=null)
				object.filters.alpha.opacity = level;
		if(object.style.MozOpacity!=null)
			object.style.MozOpacity = parseInt(level)/100;
		
	    object.opacity = level;
	} catch(ex){ alert("SetOpacity: "+ex.message); }
	    
	},
	FadeIn : function(Unique_Name, DOM_OBJ, _callback)
	{
		this.Collection[Unique_Name] = DOM_OBJ;
		this.Collection[Unique_Name].callback = _callback;
		this.SetOpacity(DOM_OBJ, 0);
		this.Collection[Unique_Name].ThreadPTR = setInterval("Transparency.FadeInStep(Transparency.Collection['"+Unique_Name+"'])", 50);
	},
	FadeInStep : function(DOM_OBJ)
	{
		if(DOM_OBJ.opacity<100)
			this.SetOpacity(DOM_OBJ, DOM_OBJ.opacity+20);
		else
		{
			clearInterval(DOM_OBJ.ThreadPTR);
			if(DOM_OBJ.callback!=null) DOM_OBJ.callback();
		}
	},
	FadeOut : function(Unique_Name, DOM_OBJ, _callback)
	{
		this.Collection[Unique_Name] = DOM_OBJ;
		this.Collection[Unique_Name].callback = _callback;
		this.Collection[Unique_Name].ThreadPTR = setInterval("Transparency.FadeOutStep(Transparency.Collection['"+Unique_Name+"'])", 50);
	},
	FadeOutStep : function(DOM_OBJ)
	{
		if(DOM_OBJ.opacity>0)
			this.SetOpacity(DOM_OBJ, DOM_OBJ.opacity-20);
		else
		{
			clearInterval(DOM_OBJ.ThreadPTR);
			if(DOM_OBJ.callback!=null) DOM_OBJ.callback();
		}
	},
	Hide : function( object )
	{
		object.style.visibility = "hidden";
	},
	Show : function( object )
	{
		object.style.visibility = "visible";
	}
};