(function($) {

	$.fn.slideShow = function(photos, slideshowSpeed) {
		
		var activeContainer = 1;	
		var currentImg = 0;
		var animating = false;
		var fadeTime = 1000;
		
		
		return this.each(function() {
		
			var navigate = function(direction) {
					// Check if no animation is running. If it is, prevent the action
					if(animating) {
						return;
					}

					// Check which current image we need to show
					if(direction == "next") {
						currentImg++;
						if(currentImg == photos.length + 1) {
							currentImg = 1;
						}
					} else {
						currentImg--;
						if(currentImg == 0) {
							currentImg = photos.length;
						}
					}

					// Check which container we need to use
					var currentContainer = activeContainer;
					if(activeContainer == 1) {
						activeContainer = 2;
					} else {
						activeContainer = 1;
					}

					showImage(photos[currentImg - 1], currentContainer, activeContainer);
			};


			var currentZindex = -1;
			var showImage = function(photoObject, currentContainer, activeContainer) {
				//animating = true;

				// Make sure the new container is always on the background
				currentZindex--;

				// Set the background image of the new active container
				$("#headerimg" + activeContainer).css({
					"background-image" : "url(http://www.aikikai.com.pl/img/slideshow/" + photoObject.image + ")",//http://localhost:8888/aikikai_ver2/img/slideshow/
					"display" : "block",
					"z-index" : currentZindex
				});


				// Fade out the current container
				/*
				$("#headerimg" + currentContainer).fadeOut(function() {
					setTimeout(function() {
						animating = false;
					}, 2000);
				});
				*/
				$("#headerimg" + currentContainer).fadeOut(fadeTime);
				
				
			};

			var stopAnimation = function() {
					// Clear the interval
					clearInterval(interval);
			};

			// We should statically set the first image
			navigate("next");

			//Start playing the animation
			interval = setInterval(function() {
				navigate("next");
			}, slideshowSpeed);
			
					
		}); // end each
		
	};

})(jQuery);
