	var image_index=0;
	var imageItem;
	var image_list;
	var number_of_image;

	var interval = 5; // delay between rotating images (in seconds)
	interval *= 1000;
				
	function GetImageList(fileName)
	{
		//var sURL = 'RotatingImages.xml';
		var oRequest = new XMLHttpRequest();
		oRequest.open("GET",fileName,false);
		oRequest.setRequestHeader("User-Agent",navigator.userAgent);
		oRequest.send(null)

		var myImages = oRequest.responseXML;
		var x = myImages.documentElement.childNodes;
		
		image_list = new Array();
		for (i=0;i<x.length;i++)
		{
			if(x[i].nodeName == "Image")
			{
			image_list[image_index++] = new imageItem(x[i].childNodes[0].nodeValue);

			}
		}
		
		return image_list;
	}
	
	
	function imageItem(image_location) {
		this.image_item = new Image();
		this.image_item.src = image_location;

	}
		
	function startRotating (place, fileName)
	{
		image_list = GetImageList(fileName);
		number_of_image =image_list.length;
		rotateImage(place);
	}
	
	function rotateImage(place) {
		var divParent = document.getElementById(place).parentNode;
		
		image_index = (image_index) % number_of_image;
		changeOpac(99,place);
		changeOpac(99,divParent.id);
		document.getElementById(place).style.backgroundImage = "url(" + image_list[image_index].image_item.src + ")"; 

		image_index += 1;	
		if (image_index==number_of_image)
			{image_index=0;
			}
			
		document.getElementById(divParent.id).style.backgroundImage = "url(" + image_list[image_index].image_item.src + ")"; 
			
							
		var recur_call = "rotateImage('"+place+"')";
		var timed_call = "timedopacity('"+place+"')";

		setTimeout(recur_call, interval);
		setTimeout(timed_call,interval-2000);
		
	}
	function timedopacity(place)
	{
	opacity(place,50,1,2000);
	}
	
	function opacity(id, opacStart, opacEnd, millisec) { 
		//speed for each frame 
		var speed = Math.round(millisec / 100); 
		var timer = 0; 

		//determine the direction for the blending, if start and end are the same nothing happens 
		if(opacStart > opacEnd) { 
			for(i = opacStart; i >= opacEnd; i--) { 
				setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed)); 
				timer++; 
			} 
		} else if(opacStart < opacEnd) { 
			for(i = opacStart; i <= opacEnd; i++) 
				{ 
				setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed)); 
				timer++; 
			} 
		} 
	} 

	//change the opacity for different browsers 
	function changeOpac(opacity, id) { 
		var object = document.getElementById(id).style; 
		object.opacity = (opacity / 100); 
		object.MozOpacity = (opacity / 100); 
		object.KhtmlOpacity = (opacity / 100); 
		object.filter = "alpha(opacity=" + opacity + ")"; 
		
	} 

	


