var bufferItem;
var mainImages=new Array();
var preloadImages=new Array();
var currentImage=0;


function getPhotoUrl(photoId,i,param2,param3,newBufferItem) {
	
	bufferItem = newBufferItem;
	
	DWREngine._execute("/library/cfm/cfc/213/photos.cfc", null, 'photoSearch', photoId, i, param2, param3, doPhotoUrlCallBack);

}


function doPhotoUrlCallBack (r) {

	showImage(r.i,r.url,r.param2,r.param3);
	bufferImage(bufferItem,r.i);		
}


function bufferImage(bufferItem, i){
	
	var bufferItem1, bufferItem2, bufferItem3;
	
	if(bufferItem.length - 1 >= i+3)
	{
		if(bufferItem.length >= i+1 ) {
			bufferItem1 = bufferItem[i+1];
		} else {
			bufferItem1 = {param1:"" ,param2: "",param3: ""};
		}
		
		if(bufferItem.length >= i+2 ) {
			bufferItem2 = bufferItem[i+2];
		} else {
			bufferItem2 = {param1:"" ,param2: "",param3: ""};
		}
		
		if(bufferItem.length >= i+3 ) {
			bufferItem3 = bufferItem[i+3];
		} else {
			bufferItem3 = {param1:"" ,param2: "",param3: ""};
		}
		
		// preload images only if they dont exist
		
		if(mainImages[i+1] == undefined){
			mainImages[i+1]=[bufferItem1.param1,bufferItem1.param2,bufferItem1.param3,bufferItem1.param1];			
			preloadImages[i+1] = new Image();
			preloadImages[i+1].src = mainImages[i+1][0];	
		}
		
		if(mainImages[i+2] == undefined){
			mainImages[i+2]=[bufferItem2.param1,bufferItem2.param2,bufferItem2.param3,bufferItem2.param1];			
			preloadImages[i+2] = new Image();
			preloadImages[i+2].src = mainImages[i+2][0];	
		}
		if(mainImages[i+2] == undefined){
			mainImages[i+3]=[bufferItem3.param1,bufferItem3.param2,bufferItem3.param3,bufferItem3.param1];			
			preloadImages[i+3] = new Image();
			preloadImages[i+3].src = mainImages[i+3][0];	
		}	
	}
}

function showImage(i,param1,param2,param3) {
	//get available sizes from flickr
	//pick appropriate size
	
	//mainImages[i][0]="flickr url or appropriate size";
	
	if (mainImages[i] == undefined) {
		mainImages[i] = [param1, param2, param3, param1];
		preloadImages[i] = new Image();
		preloadImages[i].src = mainImages[i][0];
	}
	
	//jQuery("#mainImage")
	
	document.getElementById("mainImage").src=mainImages[i][0];	
	document.getElementById("mainImage").title=mainImages[i][1];
	document.getElementById("mainImage").alt=mainImages[i][1];
	document.getElementById("mainImageLink").href=mainImages[i][3];
	document.getElementById("mainImageLink").title=mainImages[i][1];
	
	jQuery("#photoHeader").html(mainImages[i][1]);
	jQuery("#photoDescription").html(mainImages[i][2]);
	if (i==0)
		jQuery("#photoPrevious").hide();
	else
		jQuery("#photoPrevious").show();
	if (i==mainImages.length-1)
		jQuery("#photoNext").hide();
	else
		jQuery("#photoNext").show();
	currentImage=i;
	return false;
}

