//Custom carousel

(function( $ ){

  $.fn.cc = function( options ) {  

    return this.each(function() {

      var settings = {
		'nextBtn' 		 : $(".showcase > .next"),
		'prevBtn' 		 : $(".showcase > .prev"),
		'slides' 		 : "div",
		'outEffect' 	 : "easeInCubic",
		'inEffect' 		 : "easeOutCubic",
		'duration' 		 : 600,
		'wrapperWidth'   : 985
		
      };
      
      if ( options ) { 
        $.extend( settings, options );
      }

		var holder = $(this);
		var nextBtn = settings.nextBtn;
		var prevBtn = settings.prevBtn;
		var slides = settings.slides;
		var outEffect = settings.outEffect;
		var inEffect = settings.inEffect;
	
		var duration = settings.duration;
		var wrapperWidth = settings.wrapperWidth;	
		//how many slides do we have?
		var slidesNr = holder.children(slides).size()-1;
	
		//get current visible index
		
		var current = 0;
		var holderWidth = holder.width();
		var slideWidth = holder.children(slides + ":eq(0)").width();
		var padding = (holderWidth - wrapperWidth)/2;
	
		
		holder.children(slides).css({position:"absolute", left: padding+"px"});
	
	
		prevBtn.click(function(){
			holder.children(slides).stop(true,true);
			holder.children(slides + ":eq("+current+")").animate({opacity: "toggle", left: holderWidth+"px" }, duration, outEffect, function() {
				current++;
				if (current > slidesNr) {current = 0};
				holder.children(slides + ":eq("+current+")").css('left', -slideWidth).animate({opacity: "toggle", left: padding+"px" }, duration, inEffect, function() {});			
			});
		})
	
		nextBtn.click(function(){
			holder.children(slides).stop(true,true);
			holder.children(slides + ":eq("+current+")").animate({opacity: "toggle", left: -holderWidth+"px" }, duration, outEffect, function() {
				current--;
				if (current < 0) {current = slidesNr};
				holder.children(slides + ":eq("+current+")").css('left', holderWidth).animate({opacity: "toggle", left: padding+"px" }, duration, inEffect, function() {});			
			});
	
		})

    });

  };
})( jQuery );




