/*
 * 	Easy Slider - jQuery plugin
 *	written by Alen Grakalic
 *	http://cssglobe.com/post/3783/jquery-plugin-easy-image-or-content-slider
 *
 *	Copyright (c) 2009 Alen Grakalic (http://cssglobe.com)
 *	Dual licensed under the MIT (MIT-LICENSE.txt)
 *	and GPL (GPL-LICENSE.txt) licenses.
 *
 *	Built for jQuery library
 *	http://jquery.com
 *
 */

(function($) {

	$.fn.easySlider = function(options){

		// default configuration properties
		var defaults = {
			prevId: 		'prevBtn',
			prevText: 		'Previous',
			nextId: 		'nextBtn',
			nextText: 		'Next',
			orientation:	'', //  'vertical' is optional;
			speed: 			800
		};

		var options = $.extend(defaults, options);

		this.each(function() {
			obj = $(this);
			var s = $("li", obj).length;
			var w = obj.width();
			var h = obj.height();

			var ts = s-1;
			var t = 0;
			var vertical = (options.orientation == 'vertical');

			$("ul", obj).css('width',s*w);
			if(!vertical) $("li", obj).css('float','left');
			$(obj).before('<span id="'+ options.prevId +'"><a href=\"javascript:void(0);\">'+ options.prevText +'</a></span> <span id="'+ options.nextId +'"><a href=\"javascript:void(0);\">'+ options.nextText +'</a></span>');
			$("a","#"+options.prevId).hide();
			$("a","#"+options.nextId).hide();
			$("a","#"+options.nextId).click(function(){
				animate("next");
				if (t>=ts) $(this).fadeOut();
				$("a","#"+options.prevId).fadeIn();
			});
			$("a","#"+options.prevId).click(function(){
				animate("prev");
				if (t<=0) $(this).fadeOut();
				$("a","#"+options.nextId).fadeIn();
			});
			function animate(dir){
				if(dir == "next"){
					t = (t>=ts) ? ts : t+1;
				} else {
					t = (t<=0) ? 0 : t-1;
				};
				if(!vertical) {
					p = (t*w*-1);
					$("ul",obj).animate(
						{ marginLeft: p },
						options.speed
					);
				} else {
					p = (t*h*-1);
					$("ul",obj).animate(
						{ marginTop: p },
						options.speed
					);
				}
			};
			if(s>1) $("a","#"+options.nextId).fadeIn();
		});

		/** Automatische Zentrien-Funktion
		  * Funktioniert jedoch nicht stabil
		  * lösung ist über CSS als Background-IMG
		  */
		/*
		$("#slider ul li").each(function() {
			//    v Hoehe des LI            v Hoehe des ersten Kindes im LI
			//alert($(this).height()+" <--> "+$(">:first", this).height());
			//alert($(">:first", this).tagName());
			var hoehe_aussen_container = $(this).height();
			$(">:first", this).each(function(){
				$(this).after("<p>REGISTRIERE LOAD-EVENT</p>");
				$("img", this).load(function() {
					var groessendifferenz = hoehe_aussen_container - $(this).height();
					if (groessendifferenz > 1) {
						//alert('anpassen "padding-top" zu: '+groessendifferenz/2+"px");
						$(this).css("margin-top", groessendifferenz/2+"px");
						$(this).after("<p>LOAD</p>");
					}
				})

				$("img", this).each(function() {
					var groessendifferenz2 = hoehe_aussen_container - $(this).height();
					if (groessendifferenz2 > 1) {
						//alert('anpassen "padding-top" zu: '+groessendifferenz/2+"px");
						$(this).css("margin-top", groessendifferenz2/2+"px");
						$(this).after("<p>BEFORE LOAD</p>");
					}
				})

			})
		});
		*/
	};

})(jQuery);