/**
 * Un bandeau de news en jQuery, comme sur iTélé
 * par Jay Salvat - http://blog.jaysalvat.com/
 */
(function($) {
$.fn.iTvScroller = function(settings) {
    // Options
    var options =  {
        delay: 9000
    };
    $.extend(options, settings);
        
    return this.each(function(){
        var $$ = $(this);
        
        // Applique les classes au 1er et 2ème DT
        $('dt', $$)
            .eq(1).addClass('second').end()
            .eq(0).addClass('first');

        // Fait apparaitre doucement la première news
        $('dd', $$).eq(0).fadeIn('slow');
        
        // Appelle la méthode scrollTitles() toutes les x secondes
        setInterval(scrollTitles, options.delay);
        
        function scrollTitles() {
            // Traitement des DD
            $('dd', $$)
                // On les masque tous
                .hide()
                // On réaffiche celui qui nous intéresse : le suivant
                .eq(1).fadeIn('slow');

            // Traitement des DT
            $('dt', $$)
                // On réinitialise les classes de tous les titres
                .removeClass('first')
                .removeClass('second')
                // On réapplique les classes au 1er, 2ème et 3ème titre
                .eq(2).addClass('second').end()
                .eq(1).addClass('first').end()
                .eq(0).addClass('first')
                // Puis on déplace les titres vers la gauche
                .animate( { marginLeft : '-150px'}, 1000, function() {

                    // Lorsque le déplacement est termine le 1er DT ne nous intéresse plus
                    var dt = $('dt', $$).eq(0)
                        // On réinitialise la marge à gauche
                        .css('marginLeft', 0)
                        // On supprime la classe
                        .removeClass('first')
                        // On le supprime
                        .remove();

                    // On supprime également le DD
                    var dd = $('dd', $$).eq(0).remove();

                    // On repose le DT et DD à la suite des autres titres
                    $$.append( dt.hide().fadeIn('slow'), dd );
                }
            )
        }    
    });
};
})(jQuery);