jQuery(document).ready(function() {
	jQuery("div.imageWall2NavigationArrowLeft a").click(function() {
		changeVisibleThumbnails(false)
		return false; 	//Verfolgen des Links verhindern
	});
	
	
	jQuery("div.imageWall2NavigationArrowRight a").click(function() {
		changeVisibleThumbnails(true)
		return false;	//Verfolgen des Links verhindern
	});
	
	jQuery("a.thumbnailImageLink").click(function() {
		var thumbnail = jQuery(this).children().attr("name");
		/* check if the thumbnail parameter is within the number of images */
		if((jQuery("div.imageWall2Image").length-1) < thumbnail) return;
		hidePreviewImageAndDownloadlink();
		showPreviewImageAndDownloadlink(thumbnail);
		return false;
	});
});


function changeVisibleThumbnails(showThumbsWithBiggerIndex) {
	var numberOfImages = jQuery("div.imageWall2Image").length;

	var nrOfVisibleImages = 
		jQuery("div.imageWall2ThumbnailImages")
			.children()
			.filter(function() {
				var pos = jQuery(this).attr("class").indexOf("hidden");
				return pos == -1;
			}).length;
	
	var visibleThumbnailDivs = jQuery("div.imageWall2ThumbnailImages")
									.children()
									.filter(function() {
										var pos = jQuery(this).attr("class").indexOf("hidden");
										return pos == -1;
									});
	
	if(showThumbsWithBiggerIndex) {
		/* get the index of the last visible thumbnail */
		var biggestIndex = parseInt(jQuery(visibleThumbnailDivs.get(nrOfVisibleImages-1)).find("a").find("img").attr("name"));
		
		if(biggestIndex+1 < numberOfImages) {
			exchangeThumbnails(biggestIndex+1, numberOfImages);
			hidePreviewImageAndDownloadlink();
			showPreviewImageAndDownloadlink(biggestIndex+1)
		}
	}	
	else {
		/* get the index of the first visible thumbnail */
		var smallestIndex = parseInt(jQuery(visibleThumbnailDivs.get(0)).find("a").find("img").attr("name"));
		if(smallestIndex>=5) {
			exchangeThumbnails(smallestIndex-5, numberOfImages);
			hidePreviewImageAndDownloadlink();
			showPreviewImageAndDownloadlink(smallestIndex-5)
		}
	}
}

function exchangeThumbnails(startIndex, numberOfImages) {
	hideThumbnailImages();
	var endIndex = startIndex + 4;
	if(endIndex>(numberOfImages-1)) {
		endIndex = numberOfImages-1;
	}
	
	jQuery("div.imageWall2ThumbnailImages")
		.children()
		.filter(function() {
			var index = parseInt(jQuery(this).find("a").find("img").attr("name"));
			return (startIndex <= index && index <= endIndex);
		}).removeClass("hidden");
}

function hideThumbnailImages() {
	jQuery("div.imageWall2ThumbnailImages").children().addClass("hidden");
}

function hidePreviewImageAndDownloadlink() {
	jQuery("div.imageWall2Image").addClass("hidden");
	jQuery("div.imageWall2DownloadLink").addClass("hidden");
}

function showPreviewImageAndDownloadlink(thumbnail) {
	jQuery("div.imageWall2Image img[name="+thumbnail+"]").parent().removeClass("hidden");
	jQuery("div.imageWall2DownloadLink a[name="+thumbnail+"]").parent().removeClass("hidden");
}