if(typeof ($.DM) == "undefined") {
	$.DM = Object;
}

$.DM.gallery = {
	
	images: null,
	xml: '/gallery/gallery_xml/',
	selectedIndex: 0,
	
	init: function() {
		this.getImageData();
	},
	
	getImageData: function() {
		$.ajax({
			type: "GET",
			cache: false,
			dataType: "xml", 
			url: $.DM.gallery.xml,
			success: function(xmlData) {
				$.DM.gallery.images = xmlData;
				$.DM.gallery.addEvents();
			}
		});
	},
	
	addEvents: function() {
	
		var images = $('#gallery li a').click(function() {
			var i = images.index(this);
			$.DM.gallery.swapImage(i);
			return false;
		}); 
		
	},
	
	swapImage: function(i) {
		if($.DM.gallery.selectedIndex !== i) {

			$('#img-holder img').hide();
			$('#img-holder').addClass('loading');
			
			var imageData = $($.DM.gallery.images).find('item:nth-child(' + (i+1) + ')');
			var newSrc = $(imageData).find('img_full img').attr('src');
			var newAlt =  $(imageData).find('img_full img').attr('alt');
			var newDate =  $(imageData).find('date').text();
			
			$('#img-holder img').attr('src',newSrc);
			$('#img-holder img').attr('alt',newAlt);
			$('#img-caption').text(newAlt);
			$('#img-date').text(newDate);
			
			$('#img-holder img').load(function() {
				$('#img-holder').removeClass('loading');
				$(this).fadeIn('slow');							   
			});
			
			$.DM.gallery.selectedIndex = i;
		}
	}

}