
var __EstateWeb_Objects_FadingImageManager_ObjectList = new Array();
var __EstateWeb_Objects_FadingImageManager_IntervalObject;

function EstateWeb_Objects_FadingImageManager(){
	this.ImageDataSource = []; // Array of images to fade between
	this.ImageID; // ID of image control
	this.ImageFadeDuration = 2; // Time in seconds how long you want the fade to last
	this.ImageInterval = 5; // Time in seconds for pausing between images
	this.Generate = __EstateWeb_Objects_FadingImage; // Call this routine to start
}

function __EstateWeb_Objects_FadingImage(){
	HttpManager.Browser.Type() == HttpManager.Browser.Types.InternetExplorer5Plus ? HttpManager.Document.GetObject(this.ImageID).style.filter = "blendTrans(duration="+this.ImageFadeDuration+")" : "";
	__EstateWeb_Objects_StoreObjectReference(this, this.ImageID);
	__EstateWeb_Objects_FadingImageManager_IntervalObject = setInterval("__EstateWeb_Objects_FadeImage('"+this.ImageID+"')",this.ImageInterval*1000);
}

function __EstateWeb_Objects_FadeImage(oName){
	var obj = __EstateWeb_Objects_GetObjectReference(oName);
	HttpManager.Browser.Type() == HttpManager.Browser.Types.InternetExplorer5Plus ? HttpManager.Document.GetObject(obj.ImageID).filters.blendTrans.apply() : "";
	HttpManager.Document.GetObject(obj.ImageID).src = __EstateWeb_Objects_GetNextImage(obj);
	HttpManager.Browser.Type() == HttpManager.Browser.Types.InternetExplorer5Plus ? HttpManager.Document.GetObject(obj.ImageID).filters.blendTrans.play() : "";
}

function __EstateWeb_Objects_StoreObjectReference(o,name){
	var aItem = new Array();
	aItem[0] = o;
	aItem[1] = name;
	__EstateWeb_Objects_FadingImageManager_ObjectList[__EstateWeb_Objects_FadingImageManager_ObjectList.length] = aItem;
}

function __EstateWeb_Objects_GetNextImage(obj){
	var currentImage = HttpManager.Document.GetObject(obj.ImageID).src;
	for(var i=0;i < obj.ImageDataSource.length;i++){
		if ( currentImage.indexOf(obj.ImageDataSource[i]) > 0 ){
		
			if ( i == obj.ImageDataSource.length - 1 ){
				return obj.ImageDataSource[0];
			}else{
				return obj.ImageDataSource[i+1];
			}
		}
	}
}

function __EstateWeb_Objects_GetObjectReference(name){
	for(var i=0;i < __EstateWeb_Objects_FadingImageManager_ObjectList.length; i++){
		var item = __EstateWeb_Objects_FadingImageManager_ObjectList[i];
		if ( item[1].toUpperCase() == name.toUpperCase() ){
			return item[0];
		}
	}
	return null;
}