(function($)
{
	$.fn.Rotator = function(settings)
	{
		var config = {
			'slideWidth': 528,
			'animationTime': 500,
			'animationEasing': 'easeOutQuad',
			'selectedItem': 0
			};
 
		if (settings) { $.extend(config, settings); }
		settings = config;
		
		
		this.each(function(idx)
		{
			$(this).addClass("rotator");
			var children = $(this).children('div');
			
			children.wrapAll('<div class="rotatorContent"/>');
			
			
			var menu = $('<div class="rotatorMenu"/>');
			
			$(this).prepend(menu);
			
			
			var add = "";
			
			if($(this).attr("data-color") == "dark")
				add = 2;
			
			menu.append('<a href="#" class="pageBtnPrev"><img src="http://ostergotland.ungajobb.se/wp-content/themes/ungajobb_new/images/btnPrev' + add + '.png"/></a>');
			
			children.each(function(idx) {
				menu.append('<a href="#" class="pageBtn"><img src="http://ostergotland.ungajobb.se/wp-content/themes/ungajobb_new/images/btnPage' + add + '.png"/></a>');
				$(this).addClass("rotatorItem");
			});
			
			menu.append('<a href="#" class="pageBtnNext"><img src="http://ostergotland.ungajobb.se/wp-content/themes/ungajobb_new/images/btnNext' + add + '.png"/></a>');
			
			$(this).children(".rotatorMenu").children("a.pageBtnPrev").click(function(e)
			{
				e.preventDefault();
				
				var idx = currIdx - 1;
				
				if (idx < 0)
					idx = children.length - 1;
				
				selectItem( children.eq( idx ) );
			});
			
			$(this).children(".rotatorMenu").children("a.pageBtnNext").click(function(e)
			{
				e.preventDefault();
				
				var idx = currIdx + 1;
				
				if (idx == children.length)
					idx = 0;
				
				selectItem( children.eq( idx ) );
			});
			
			$(this).children(".rotatorMenu").children("a.pageBtn").click(function(e)
			{
				e.preventDefault();
				selectItem( children.eq( $(this).parent(".rotatorMenu").children().index($(this)) - 1 ) );
			});
			
			//$(this).append("<div class='clear'></div>");
			
			selectItem(children.eq(settings.selectedItem));
			
			
			
			/*////////////////////////////////// FUNCTIONS //////////////////////////////////*/
			
			var currIdx;
			
			function selectItem(item)
            {
				var itemIndex = children.index(item);
				
				currIdx = itemIndex;
				
				$(item).parent(".rotatorContent")
				.css({
					"position": "absolute",
					"top": 0
				})
				.stop().animate({
					left: -settings.slideWidth * itemIndex
				},
				{
					duration: settings.animationTime,
					easing: settings.animationEasing
				})
				.prev().children("a.pageBtn").each(function(idx)
				{
					if (idx <= itemIndex)
						$(this).addClass("pageBtnActive");
					
					else
						$(this).removeClass("pageBtnActive");
				});
				
            }
		});		
	};
})(jQuery);
