$(document).ready(function(){
   var activeSlide=0;
   var maxSlides= $('.highlights-tabs li').size();
   $('.highlights-tabs li').css('opacity', '0.95');
   slides = maxSlides;
   var timer = null;
   var timerStop = false;

   $('.highlights .highlights-tabs li').click(
	function() {
	    $('.highlights-tabs li.selected').removeClass('selected');
	    $(this).addClass('selected');
	    var i=$(this).attr('id');

	    $('.highlights-panes li.selected').stop().animate({opacity: 0}, 350, function() {$(this).removeClass('selected')} );
	    $('.highlights-panes li:eq(' + i + ')').addClass('selected').css('opacity', '0').stop().animate({opacity: 1}, 350 );
	    timerStop = true;
	    timer.stop();
	}
   );

   $.timer(3500,
	function(t) {
	    if (timerStop == false) {
		activeSlide = (activeSlide + 1) % slides;
		if (timer == null) {
		    timer = t;
		}

		$('.highlights-tabs li.selected').removeClass('selected');
		$('.highlights-tabs li:eq(' + activeSlide + ')').addClass('selected');
		$('.highlights-panes li.selected').stop().animate({opacity: 0}, 350, function() {$(this).removeClass('selected')} );
		$('.highlights-panes li:eq(' + activeSlide + ')').addClass('selected').css('opacity', '0').stop().animate({opacity: 1}, 350 );
	    }
	}
   );


    function changeHomepageWidth(first) {
	var width = $(window).width();

	if (width <= 1310) {
	    $('body#home .news').removeClass('news-medium').addClass('news-small');
	    $('body#home .highlights').removeClass('highlights-medium').addClass('highlights-small');

	    slides = maxSlides > 3 ? 3 : maxSlides;
	    if (activeSlide > slides - 1) activeSlide=0;
	} else if (width <= 1560) {
	    $('body#home .news').removeClass('news-small').addClass('news-medium');
	    $('body#home .highlights').removeClass('highlights-small').addClass('highlights-medium');
	
	    slides = maxSlides > 4 ? 4 : maxSlides;
	    if (activeSlide > slides - 1) activeSlide=0;
	} else if (first == false) {
	    $('body#home .news').removeClass('news-small').removeClass('news-medium');
	    $('body#home .highlights').removeClass('highlights-medium').removeClass('highlights-small');
	
	    slides = maxSlides > 5 ? 5 : maxSlides;
	}
}

changeHomepageWidth(true);
$(window).bind("resize", function(){
    changeHomepageWidth(false);
});



// interval
jQuery.timer = function (interval, callback) {
    var interval = interval || 100;
    if (!callback)
	return false;
    _timer = function (interval, callback) {
	this.stop = function () {
	    clearInterval(self.id);
	};

	this.internalCallback = function () {
	    callback(self);
	};

	this.reset = function (val) {
	    if (self.id)
		clearInterval(self.id);

	    var val = val || 100;
	    this.id = setInterval(this.internalCallback, val);
	};

	this.interval = interval;
	this.id = setInterval(this.internalCallback, this.interval);

	var self = this;
    };

    return new _timer(interval, callback);
};

});
