/*
 *  jquery.rotator
 *  Version: 0.1
 */
 
(function($) {
    $.fn.rotator = function(options) {

        var defaults = {
            ms: 2000,
            n: 1,
            autoHeight: false
        };

        var options = $.extend(defaults, options);

        return this.each(function(index) {

            var $this = $(this);

            var initialHeight = 0;
            $this.children().filter(":lt(" + options.n + ")").each(function(index, item) {
                initialHeight += $(item).height();
            });

            //$this.height(initialHeight);

            setInterval(function() {

                var childHeight = $this.children().filter(":first-child").height();
                var animParams = {
                    opacity: 0.0
                };
                var autoHeight = 0;
                $this.children().filter(":lt(" + (options.n + 1) + ")").each(function(index, item) {
                    if (index > 0) autoHeight += $(item).height();
                });
                if (options.autoHeight) animParams = $.extend({ height: (autoHeight) + "px" }, animParams);


                $this.animate(animParams, 1000, function() {
                    $this.scrollTop(0);
                    $(this).animate({ opacity: 1 }, 1000);
                    $this.append($this.children().filter(":first-child"));
                    $this.append($this.children().filter(":first-child"));
                    $this.css("overflow", "hidden"); //Chrome hack
                });


            }, options.ms);


        });


    } 
})(jQuery);

