        $(function () {
            $('#steps li').each(function () {
                var jThis = $(this),
                jOverview = jThis.find('div.overview');
                jThis.hover(
                function () { jOverview.slideDown('fast'); },
                function () { jOverview.slideUp(); }
            );
            });

            var testimonialData = [];

            $.ajax({
                url: "testimonials.xml",
                success: function (data) {
                    $(data).find('testimonial').each(
                        function () {
                            var jNode = $(this);
                            testimonialData.push({
                                content: jNode.find('content').text(),
                                author: jNode.find('author').text(),
                                org: jNode.find('org').text()
                            });
                        }
                    );
                    TestimonialRotator.init(testimonialData);
                    setTimeout(function(){
                        TestimonialRotator.rotate();
                    }, TestimonialRotator.transitionDelay);

                }
            });

        });

        var TestimonialRotator = {
            data: null,
            current: 0,
            container: null,
            testimonials: [],
            transitionDelay: 7000,
            init: function (data) {
                this.container = $('#testimonial div.box-body');
                this.data = data;
                var sContent, sAuthor, sOrg, sHtml, sClass, jTemp;
                for (var i in this.data) {

                    sContent = this.data[i].content,
                    sAuthor = this.data[i].author,
                    sOrg = this.data[i].org;
                    sClass = (i == 0) ? ' active' : '';
                    sHtml = '<div class="testimonial' + sClass + '"><p>' + sContent + '</p>';
                    sHtml += '<p class="attribution">' + sAuthor + '<br/>' + sOrg + '</p></div>';
                    jTemp = $(sHtml);

                    this.container.append(jTemp);
                    this.testimonials.push( jTemp );
                }
                Cufon.replace(this.container.find('p'));
                return this;
            },

            rotate: function() {
                this.testimonials[this.current].fadeOut('fast', function(){
                    var that = TestimonialRotator;
                    if( that.current >= that.testimonials.length-1 ) {
                        that.current = 0;
                    } else {
                        that.current += 1;
                    }
                    that.testimonials[that.current].fadeIn();
                    setTimeout(function(){
                        TestimonialRotator.rotate();
                    }, 10000);
                });
            }
        }
