$(document).ready(function ()
{
    var splash = $('div.app\\/home\\/splash .splash');
    var rotating = true;
    
    var anim_duration = 750;
    var pause_duration = 5000;
    var timer;
    var anims = {
        'slide': {
            'from' : {
                left:'970px'
            },
            'to' : {
                left:'0px'
            }
        },
        'slide-fade': {
            'from' : {
                left:'970px',
                opacity:0
            },
            'to' : {
                left:'0px',
                opacity:1.0
            }
        },
        'fade': {
            'from' : {
                opacity:0
            },
            'to' : {
                opacity:1.0
            }
        }
    };
    var anim = 'fade';
    
    var cur_slide = 1;
    var gotoSlide = function (slide)
    {
        if (slide > 5)
        {
            slide = 1;
        }
        if (slide == cur_slide)
        {
            return;
        }
        var from_slide = splash.find('div.slide-'+cur_slide);
        var to_slide = splash.find('div.slide-'+slide);
        to_slide.css(anims[anim].from).addClass('top-slide').show();
        from_slide.removeClass('top-slide');
        to_slide.animate(anims[anim].to, anim_duration, function () { 
            cur_slide = slide;
            from_slide.hide();
            if (rotating)
            {
                timer = window.setTimeout(rotate, pause_duration);
            }
        });
        return;
    }
    
    var rotate = function ()
    {
        if (!rotating)
        {
            return; // and don't reschedule
        }
        // show the next slide and reschedule
        var new_slide = cur_slide + 1;
        gotoSlide(new_slide);
    };
    
    timer = window.setTimeout(function () { rotate() }, pause_duration);
});
