(function($) {
	$.timer = null;
	$.current = 1;
	$.last = 0;

	$.imageFade = function() {}
	
	$.fn.imageFade = function() {
		var elements = $(this).children();
		$.imageFade.next(elements, $(this),true);
		return this;
	};

	$.imageFade.next = function (elements, outer, direction) {   //direction true = next, false = previous
		//current = $.current;
		clearTimeout($.timer);
		
		last = $.last;
		
		if(direction) {
			current = last+1;
		}
		else {
			current = last;
			last = current-1;
			if(last < 0) {
				last = elements.length-1;
			}
		}
		
		if(current > elements.length-1) {
			current = 0;
		}
		else if (current < 0) {
			current = elements.length-1;
		}
		
		//alert("hellow mein Freund");
		
		//alert("sarvus");
		var next, prev;
		
	
		if (current == 0)
			prev = elements.length - 1;
		else
			prev = current - 1;
	
	//if(!direction) {
	//	last = prev;
	//}
	
	for ( var i = 0; i < elements.length; i++ ) {
		if ((i != last) && (i != current) && (elements.length != 1))
		{
			$(elements[i]).css('z-index', '1');
			$(elements[i]).css('top', 0).css('left', 0);
			$(elements[i]).hide();
		}
	}

	//var random = Math.floor(2*Math.random()+1);
	var top = 0;
	var left = 0;
	//if (random == 1) {
	//  top =getvheight(outer,elements[current])/2;
	//  left=getvwidth(outer,elements[current])/2;
	//}
	//if (random == 2) {
	//    top = getvheight(outer,elements[current]);
	//    left = getvwidth(outer,elements[current])/2;
	//}	

	//alert("top: " + top);
	//alert("Left: " + left);
	
		$(elements[last]).css('z-index', '85');
		$(elements[current]).css('z-index', '90').css('top', 0).css('left', 0);
		//$(elements[prev]).css('z-index', '85').css('top', 0).css('left', 0);
		
		
		if(direction) {
			$(elements[current]).fadeIn(800);
			if(elements.length != 1) {
				$(elements[last]).fadeOut(800);
			}
		}
		else {
			$(elements[prev]).fadeIn(800);
			if(elements.length != 1) {
				$(elements[current]).fadeOut(800);
			}
		}

	//$.imageFade.move_photo(elements[current], outer, random);
	
		//$.current = next;
		
		if($.last == current) {
			$.last = last;
		}
		else {
			$.last = current;
		}

	
	$.timer = setTimeout((function(){
		$.imageFade.next(elements, outer, true);
	}), 10000);
	
}
	$.imageFade.move_photo = function (element, parentelement, mode) {
	var vheight =  getvheight(parentelement, element);
	var vwidth =  getvwidth(parentelement, element);
	var id = $(element).find("img").attr("id");
	var endPositions = id.split("_");
	var height = $(parentelement).css("height");
	var outerHeight = height.substr(0,height.length-2);
	var posy = -(endPositions[1])+(outerHeight/2);
	if (vheight > 0) vheight = 0;
	if (vwidth > 0) vwidth = 0;

	//  $(element).animate({top:posy, left: (vwidth/2)}, parseInt(15000));
	};
	
	function getvwidth(parentelement, element) {
		var width = $(parentelement).css("width");
		var outerWidth = width.substr(0,width.length-2);
		var vwidth =  -(parseInt($(element).find("img").attr("width"))-parseInt(outerWidth));
		return vwidth;
	}

	function getvheight(parentelement, element) {
		var height = $(parentelement).css("height");
		var outerHeight = height.substr(0,height.length-2);
		var vheight =  -(parseInt($(element).find("img").attr("height"))-parseInt(outerHeight));
		return vheight;
	}
	})(jQuery);

