/* 

	KeyifliBardaklar - CiuSlider File
	@author 			Kerem Sevencan in CIU
	@date				26.09.2011
							
	@piece 				ciuSlider	*/

(function($){

  $.fn.ciuSlider = function(options) {

	var opts = $.extend({}, $.fn.ciuSlider.set, options);

	return this.each(function() {		
	
		var slider = $(this);
		var o = $.meta ? $.extend({}, opts, $(this).data()) : opts;
		slidertype = o.type;
		activeCL = o.activeclass;
		contclass = o.contentclass;
		listclass = o.listclass;
		desc = o.desc;
		prev = o.prev;
		next = o.next;
		time = o.time;
		auto = o.auto;
		autotime = o.autotime;
	
		/* Values */
		elementsList =  $(slider).find(contclass).children('ul');
		elements = elementsList.children('li');
		var elementWidth = elements.width();
		elementsCount = elements.size();
		listclick = $(slider).find(listclass).find('ul li a');
		allWidth = parseInt(elementsCount * elementWidth);
		elementsList.width(allWidth);
        
        $(document).bind("slideNext", function(e, myName, myValue, esSafe) {
			$.fn.ciuSlider.sliderChange(activeCL, myName, myValue, esSafe, elementWidth, elementsCount);
		});
        
        $(slider).find(prev).click(function(e) {
            e.preventDefault();
            $(document).trigger('slideNext', ['nav','right',slider]);

        });
        
       $(slider).find(next).click(function(e) {
			e.preventDefault();
            $(document).trigger('slideNext', ['nav','left',slider]);
        });
		
		if (auto == true) {
            autoInterval =  setInterval(function () { $(document).trigger('slideNext', ['nav','left',slider]);}, autotime);
        }
	});
	
   };
	
	$.fn.ciuSlider.sliderChange = function(index, type, direction, safe, width, count) {
	
		elementsList =  $(safe).find(contclass).children('ul');

      if ( elementsList.is(":animated") == false) {
      
		if (type == "nav") {
           newIndex = $(safe).find(contclass).find('ul > li.'+activeCL).index();
           countlist = $(safe).find(contclass).find('ul > li').size();
           
            if (direction == 'left') {
                index = newIndex+1;
            } else {
                index = newIndex-1;
            }
            
           if (countlist == index) {
             index = 0;
           } else if (index < 0) {
             index = countlist-1;
           }
           
        }
		
        rightValue = parseInt(width * index);
		
        $(safe).find(contclass).find('ul li').removeClass(activeCL);
        
        $(safe).find(contclass).find('ul li:eq('+index+')').addClass(activeCL);
        
        if ( slidertype == "classic" ) {
            elementsList.animate({ "right": rightValue }, time);
        } else {
            elementsList.find('li').not(':eq('+index+')').fadeOut('fast');
            elementsList.find('li').eq(index).animate({ opacity: 'show' }, "slow");
        }
      }
	}
  
  $.fn.ciuSlider.set = {
      'type' : 'classic',
	  'activeclass' : 'active',
	  'contentclass' : '.listItems',
	  'listclass' : '.slideNavigation',
      'desc' : '.itemDesc',
      'prev' : '.prev',
      'next' : '.next',
	  'time' : 1000,
	  'auto' : true,
	  'autotime' : 12000
    };
  
})(jQuery);
