// JavaScript Document

$(document).ready(function(){
	xmldata=new Array();			//initialise array for XML data
	fade=0;					//time taken for transitions
	ontime=0;				//time between transitions
	changetot=0;				//total banners
	changenum=1+Math.floor(Math.random()*21);	//current banner
	currentbanner=1;
	
	//$("#banner_href2").fadeTo(10,1.0);		//fade out the fallback banner
	//$("#banner_href1").fadeTo(10,1.0);		//fade out the fallback banner
	
	
	$.ajax({								//get the XML data
 	 	url: "/files/headers/filelist.xml",				//URL to get the data from
 	 	success: function(data) {					//if we succeed, set everything up. We don't expect failure.
		  	$(data).find("picture").each(function()
		 	 {
				xmldata.push($(this));				//add item into array
			 });
				 changetot=xmldata.length;			//get total length
			 	 ontime=eval($(data).find("gallery").attr("ontime"));	//get fade time
				 fade=eval($(data).find("gallery").attr("fade"));	//get time between fades
				 changenum=1+(Math.floor(Math.random()*(changetot-1)));
				 change_banner(changenum);			//change banner for first banner
				 
		 		}		
		});				   
});

function change_banner(){
	
	data=xmldata[changenum];					//get current banner XML object 
	
	img=$(data).attr("src");					//retrieve variables
	href=$(data).attr("href");
	target=$(data).attr("target");
	
	currentbanner=3-currentbanner;
	
	$("#banner_href"+currentbanner).attr("href",href);		//change variables on HTML
	$("#banner_href"+currentbanner).attr("target",target);
	$("#banner_image"+currentbanner).attr("src",img);
	
	changenum++;			//increment banner value, this is executed BEFORE the callback as we already have the variables.
	if(changenum>=changetot)	//check for banner value bounds
		changenum=0;	
		
	cache = document.createElement('img');		//create an image 
    cache.src = $(xmldata[changenum]).attr("src"); 	//pre-cache next image (means the browser will load it instantly)		

	//alert('changenum=:'+changenum);
	$("#banner_href"+(3-currentbanner)).fadeTo(fade,0,
					   function(){
						   $(this).hide();
					   });		
	//alert('cuurent header:'+currentbanner);
	$("#banner_href"+currentbanner).fadeTo(fade,1).fadeTo(ontime,1,change_banner);	//fade banner in, then wait, then fade out and call back to this function.
}	

