﻿$.fn.carousel = function() {
    return this.each(function() {
        var wrapper = $("> div", this).css("overflow","hidden");
        var slider = wrapper.find("> ul");
        var items = slider.find("> li");
        
        items.filter(':first').before(items.slice(- visible).clone().addClass('cloned'));
        items.filter(':last').after(items.slice(0, visible).clone().addClass('cloned'));
        items = slider.find('> li');
        items.each(function(i) {
            if((i+1)%2===0) { $(this).addClass("even") }
            else { $(this).addClass("odd"); }
        });
        
        
        var single = items.filter(":first");
        var singleWidth = single.outerWidth(); 
        var visible = Math.ceil(wrapper.innerWidth() / singleWidth);
        var currentPage = 0;
        var pages = items.length;  
        
        slider.css({width: slider.find("li:first").outerWidth() * slider.find("> li").length})
        
        function gotoPage(scollpage, page) {
		   if (page == pages) {
                page = 0;
                currentPage = page;
            } else {
                wrapper.filter(':not(:animated)').animate({
                    scrollLeft : (singleWidth * page)
                }, 950, function () {
                    currentPage = page;
                });
            }
            return false;
        }
        
        $(this).bind('next', function (e, data) {
                gotoPage(data.scrollPage, currentPage + data.scrollPage);
        });
        $(this).bind('previous', function (e, data) {
            gotoPage(data.scrollPage, currentPage - data.scrollPage);
        });
    });
};
$(document).ready(function() {
    var autoscrolling = true;
    $("#sectors").carousel().hover(function() { 
        autoscrolling = false; 
		
    },
    function() { 
        autoscrolling = true; 
		
    });
    
    
    $("#sectors-pager .previous").click(function() {
        $("#sectors").trigger('previous', { scrollPage: 1});
    });
    $("#sectors-pager .next").click(function() {
        $("#sectors").trigger('next', { scrollPage: 1});
    });
    
    setInterval(function () {if (autoscrolling) {$('#sectors').trigger('next', { scrollPage: 1});}}, 6000);
  
});