// Version 1.0 (24.05.2011) BL
$(document).ready(function(){

	var showTime = 7000; // Anzeigedauer (in Millisekunden)
	var transitionTime = 1500; // Transitiondauer (Fade ein und aus) (in Millisekunden)
	if (navigator.appVersion.indexOf("MSIE 7") != -1) transitionTime = 0; // bei IE 7 keine Transition
	if (navigator.appVersion.indexOf("MSIE 8") != -1) transitionTime = 0; // bei IE 8 keine Transition
	var curSlide = 0;
	var noOfSlides = $('.slideshow-item').length;
	var aFadeEl = new Array('#slide', '#slideshow-mask-', '#slide-t1-', '#slide-t2-');
	var intervall;
	
	// Bilder vorausladen (preloader)
	var cache = [];
	$.preLoadImages = function() {
		var args_len = arguments.length;
		var aImages = arguments[0];
		for (var i = 0; i < aImages.length; i++) {
			var cacheImage = document.createElement('img');
			cacheImage.src = aImages[i]; // Arguments are image paths relative to the current page.
			cache.push(cacheImage);
		}
	}

	$.preLoadImages(aImg);

	// Nachdem die Bilder vorausgeladen wurden: erstes Bild einblenden
	//	$('#slide0').load(function() { alert('Image Loaded'); }); // doesn't work
	$(window).load(function(){
		$('.slideshow-loading').fadeOut(100);
		fadeIn();
		$('#slideshow-next').fadeIn(transitionTime);
		$('#slideshow-back').fadeIn(transitionTime);
		intervall = setInterval("$.intervall();",showTime);
	});
	
	$.intervall = function(){
		slideSwitch(1);
	}
	
	$('#slideshow-back').click(function() {
		slideSwitch(-1);
	});

	$('#slideshow-next').click(function() {
		slideSwitch(1);
	});
	
	function slideSwitch(amount){
		clearInterval(intervall);
		intervall = setInterval("$.intervall();",showTime);
		fadeOut();
		changeCurSlide(amount);
		fadeIn();
	}
	
	function fadeIn(){
		$('#slide'+curSlide).fadeIn(transitionTime);
		$('#slideshow-mask-'+curSlide).fadeIn(transitionTime);
		$('#slide-t1-'+curSlide).fadeIn(transitionTime);
		$('#slide-t2-'+curSlide).fadeIn(transitionTime);
	}
	
	function fadeOut(){
		$('#slide'+curSlide).fadeOut(transitionTime);
		$('#slideshow-mask-'+curSlide).fadeOut(transitionTime);
		$('#slide-t1-'+curSlide).fadeOut(transitionTime);
		$('#slide-t2-'+curSlide).fadeOut(transitionTime);
	}
	
	function changeCurSlide(i){
		curSlide += i;
		if(curSlide >= noOfSlides) curSlide = 0;
		if(curSlide < 0) curSlide = noOfSlides - 1;
	}

	$(document).keydown(function(event){
		switch (event.keyCode) {
			case 37: slideSwitch(-1); break; // "Pfeil nach links"-Taste
			case 38: slideSwitch(-1); break; // "Pfeil nach oben"-Taste
			case 39: slideSwitch(1); break; // "Pfeil nach rechts"-Taste
			case 40: slideSwitch(1); break; // "Pfeil nach unten"-Taste
		}
	});
	
});

