(function($){
	$.fn.pillar = function(options){	
		var defaults = {
				timer: 3000,
				width: 300,
				height: 300,
				navigator: true,
				padding: 10,
				margin: 0,
				float: 'left'
				
		};
		var options = $.extend(defaults, options);
		var nameID = $(this).attr("id");
		var count = 0;
		var timer;
		var selected = 0;
		var next = 1;
		var interval = options.timer;
		
		function _initialize(){
			_start(this);
			_navigator();
		}
		
		function _start(object){			
			clearTimeout(timer);
			var navigator = "<div class='nav' id='" + nameID + "-navigator'>";
			$(object).css({				
				float: options.float,
				"background-color": '#FFF',
				position: 'relative'
			});
			
			$(object).addClass("pillar-class")
			$(object).find("li").each(function(i){
				$(this).css({
					width: options.width - 2*options.padding-2*options.margin,
					height: options.height - 2*options.padding-2*options.margin,
					padding: options.padding,
					margin: options.margin,
					position: 'relative',
					display: 'block'
				});
				var imgObj = $(this).find("img");
				var vyska = $(this).css('height');
				var sirka = $(this).css('width');
				
				count++;
				navigator+= "<span><a id='" + nameID + "-"+i+"-a' href='#" + nameID + "-"+i+"'>"+(i+1)+"</a></span>";

				if (i!=0) $(this).hide();
				
				if (imgObj.attr("src")!=null) {
					$(this).attr("id",nameID + "-" + i).css("background-image","url("+imgObj.attr("src")+")");				
					imgObj.remove();
				}
				
				
				$(this).find("a").each(function(){
					$(this).css({
						position: 'absolute',
						'z-index': '990',
						width: sirka,
						height: vyska	
					});
				});
			});
			navigator+= "</div>";
			
			if (count>1) {
				$(object).append(navigator);				
				$("#" + nameID + "-navigator").css({left: 10, top: options.height-30}).hide();
				timer = setTimeout(_click,interval);
			}
		}
		
		function _navigator(){
			if (count>1){
				$('#' + nameID + '-navigator>span>a').unbind().bind('click',function(){
					next = $(this).attr('href').replace("#"+nameID+"-","");
					interval = 10000;
					_click();
					return false;
				});
				$(".pillar-class").mouseenter(function(){
					$('#' + nameID + '-navigator').show();
				}).mouseleave(function(){
					$('#' + nameID + '-navigator').fadeOut();
				});
			}
			
		}
		
		function _click(event){
			
			ele = "#"+nameID+"-"+(selected)+"-a";			
			$(ele).removeClass("selected");
			$($(ele).attr("href")).hide();
						
			var ele = "#"+nameID+"-"+next+"-a";
			selected = next;
			$(ele).addClass("selected");
			$($(ele).attr('href')).fadeIn();	
					
			next++;
			if (next>=count) next = 0;
			
			clearTimeout(timer);	
			timer = setTimeout(_click,interval);
			interval = options.timer;
		}
		
		return this.each(_initialize);
	}	
})(jQuery);
