// JavaScript Document
jQuery.fn.simpleGallery = function(obj) {
	var json = new Object();
	var page = 1;
	var images = new Array();
	var gallery = this;
	
	// Add functionality to control buttons
	$(obj.nextButton).click(function() {
		fill_gallery(1);
	});
	
	$(obj.prevButton).click(function() {
		fill_gallery(-1);
	});
	
	// Fill up gallery
	var fill_gallery = function(delta) {		
		if(delta + page == 0 || delta + page > Math.ceil(images.length / obj.display)) {
			return false;
			
		} else {
			page = page + delta;
			
			// Create new ul element
			var ul = document.createElement("ul");
			var img;
			var li;
			var index;
			
			// Create blank lists
			for(var j = 0; j < obj.display; j++){
				li = document.createElement("li");
				img = new Image();
				index = ((page - 1) * obj.display) + j;
				
				if(index < images.length) {
					$(img)
						.load(function() {
							$(this).appendTo(li);
							$(li).appendTo(ul);
							var new_width = obj.imageScale * this.width;
							var new_height = obj.imageScale * this.height;
							
							this.width = new_width;
							this.height = new_height;
						})
					
						.attr("src", images[index]);
				}
			}
			
			// Clear current gallery contents
			$(gallery).html('');
			
			// Add ul list of images
			$(ul).appendTo(gallery);
		}
	}
	
	// Load default images
	$.getJSON(obj.flickrURL,
		function(data) {
			$.each(data.items, function(i, img) {
				images.push(img.media.m);
			});
			
			// Start on page 1
			fill_gallery(0);
		}
	);
}