var WalesFlickr = {
	ImageList:{
	},

	ImageHidden:{
	},
	
	ImageIndex:{
	},
	
	Init : function(){
		WalesFlickr.ShowNav();
	},
	
	ShowNav: function(){
		glow.dom.get('.flickrBlock').removeClass('hide');
		glow.dom.get('.flickrBlock .hide').removeClass('hide');
		for (var flickrid in WalesFlickr.ImageList)
		{
			glow.events.addListener(
				'#'+flickrid +' .flickrNav-prev a',
				"click",
				function(e){
					e.preventDefault();
				   WalesFlickr.ShowPrev(flickrid); 
				}
			);
			
			glow.events.addListener(
				'#'+flickrid +' .flickrNav-next a',
				"click",
				function(e){
					e.preventDefault();
				   WalesFlickr.ShowNext(flickrid); 
				}
			);

			//disable previous button
			WalesFlickr.CalcNav(flickrid);
			glow.dom.get('#'+flickrid +' .flickrNav-prev').addClass("disablenav");
		}

	},
	
	CalcNav: function(id){
		if(glow.dom.get('#' +id +' .hiddennext').children().length){
			glow.dom.get('#'+id +' .flickrNav-next').removeClass("disablenav");
			}else{
			glow.dom.get('#'+id +' .flickrNav-next').addClass("disablenav");
			}
	
		if(glow.dom.get('#' +id +' .hiddenprev').children().length){
			glow.dom.get('#'+id +' .flickrNav-prev').removeClass("disablenav");
		}else{
			glow.dom.get('#'+id +' .flickrNav-prev').addClass("disablenav");
		}
		
		},
	
	AddImageList: function(id, numonshow, imgList){
		if (!WalesFlickr.ImageList) WalesFlickr.ImageList = new Array();
		WalesFlickr.ImageList[id]=[0,numonshow,imgList];
		WalesFlickr.SetImageIndex(id,numonshow);
		glow.dom.get('#'+id +'  .flickrImagesShown').before(glow.dom.create('<div class="hiddenimages hiddenprev"></div>'));	
		glow.dom.get('#'+id +'  .flickrImagesShown').after(glow.dom.create('<div class="hiddenimages hiddennext"></div>'));	

		
		while(WalesFlickr.GetImageIndex(id)<imgList.length){
		WalesFlickr.CreateNewBlock(id);
		}
		},

	
	GetImageSrc: function(id){
		return WalesFlickr.ImageList[id][2][WalesFlickr.GetImageIndex(id)][0];
	},
	
	GetImageIndex: function(id){
		return WalesFlickr.ImageIndex[id];
	},
	
	IncreaseImageIndex: function(id){
			WalesFlickr.ImageIndex[id]++;
	},
	
	SetImageIndex:function(id, val){
		WalesFlickr.ImageIndex[id] = val;
	},
	
	GetImageAlt: function(id){

		return WalesFlickr.ImageList[id][2][WalesFlickr.GetImageIndex(id)][1];
	},
	
	GetImageLink: function(id){
		return WalesFlickr.ImageList[id][2][WalesFlickr.GetImageIndex(id)][2];
	},
	
	isEndOfList: function(id){
			return(WalesFlickr.ImageIndex[id]>=WalesFlickr.ImageList[id][2].length);
	},
	
	CreateNewBlock: function(id){
		
		//copy existing block
		var newBlock = glow.dom.get('#'+id +' .flickrImagesShown .flickrImages').clone();
		//insert new items into block
		var newBlockA = newBlock.get('a');
		var newBlockImg = newBlock.get('img');
		//Next block
		

		newBlockA.each(function(i){
				if (WalesFlickr.isEndOfList(id)){
						newBlockImg[i].src = "/wales/nature/images/flickr/flickr-noimage.gif";
						newBlockImg[i].alt = "";
						this.href = "";
						this.className="disableImgLink";
						glow.events.addListener(
							this,
							"click",
							function(e){e.preventDefault()}
						);
				}else{
					newBlockImg[i].src = WalesFlickr.GetImageSrc(id);
					newBlockImg[i].alt = WalesFlickr.GetImageAlt(id);
					this.href = WalesFlickr.GetImageLink(id);
					WalesFlickr.IncreaseImageIndex(id);
				}
		});
		//insert into hidden area
		glow.dom.get('#'+id +' .hiddennext').append(newBlock);
	},
	
		
	ShowPrev: function(id){
		glow.dom.get('#' +id +' .hiddennext').prepend( glow.dom.get('#' +id +' .flickrImagesShown .flickrImages'));
		glow.dom.get('#' +id +' .flickrImagesShown').append(glow.dom.get('#' + id +' .hiddenprev .flickrImages').item(0));
		WalesFlickr.CalcNav(id);
	},

	ShowNext: function(id){
		glow.dom.get('#' +id +' .hiddenprev').prepend( glow.dom.get('#' +id +' .flickrImagesShown .flickrImages'));
		glow.dom.get('#' +id +' .flickrImagesShown').append(glow.dom.get('#' + id +' .hiddennext .flickrImages').item(0));
		WalesFlickr.CalcNav(id);
	}	

}

glow.ready(function(){
	WalesFlickr.Init();
}
)