(function($) {
    $.fn.accordion = function(options) {

        var 
			defaults = {},

		settings = $.extend({}, defaults, options);

        // Variable
        var current = 1;
        var last = 0;
        var nbreNouvelle = 0;
        var t = null;
        var v = null;

        var element = this;
        var element_id = element.attr('id');

        nbreNouvelle = $('#' + element_id + ' .new').length;

        function automate() {
            if (current >= nbreNouvelle) {
                last = (nbreNouvelle - 1)
                current = 0;
            }
            else { last = current - 1; }

            $('#' + element_id + ' .new h3').addClass('ui-state-default');
            $('#' + element_id + ' .new h3').removeClass('ui-state-active');
// console.log('automate = '+current);
            $('#' + element_id + ' .visionneuse-contenu-nouvelle').css('display', 'none');
            $('#' + element_id + ' .new h3:eq(' + current + ')').addClass('ui-state-active');
            $('.visionneuse-contenu-nouvelle:eq(' + current + ')').css('display', 'block').css("opacity", "0").animate({ opacity: 1 });

            current++;

        } // automate end

        function enableEvent() {

            $('#' + element_id + ' .new h3').hover(function() {

                var checkElement = $(this).next();

                // Si je suis une div et que cette div n'est pas visible
                if ((checkElement.is('div')) && (!checkElement.is(':visible'))) {
                    $('#' + element_id + ' .visionneuse-contenu-nouvelle').css('display', 'none');
                    checkElement.css('display', 'block').css("opacity", "0").animate({ opacity: 1 });
                    $('#' + element_id + ' .new h3').removeClass('ui-state-active');
                    $(this).addClass('ui-state-active');

                    current = $('#' + element_id + ' .new h3').index(this);
                    current++;

                    return false;
                }

            }); // end hover event

        } // end enableEvent

        function init() {

            //$('.visionneuse-contenu-nouvelle:not(:first)').css('display', 'none');
            $('.visionneuse-contenu-nouvelle:first').css('display', 'block');
            $('#' + element_id + ' .new h3').addClass('ui-state-default');
            $('#' + element_id + ' .new h3').removeClass('ui-state-active');
            $('#' + element_id + ' .new h3:first').addClass('ui-state-active');

            interval();
            enableEvent();

            $('#' + element_id).mouseover(function() {

                if (t != null) {
                    clearInterval(t);
                    t = null;
                }

                if (v != null) {
                    clearTimeout(v);
                    v = null;
                }

            }); // end event mouseover

            $('#' + element_id).mouseleave(function() {
                if (v == null && t == null)
                { v = setTimeout(interval, 8000); }
            }); // end event mouseover

            $('.visionneuse-contenu-nouvelle').click(function() {
                var curId = "#" + this.id;
                var curLink = $(curId).prev("h3").find("a").attr("href");
                if (curLink.length > 0)
                    window.location.href = curLink;
                return false;
            }).css('cursor', 'pointer'); // end event click
            
        } // init end


        function interval() {
            t = setInterval(automate, 8000);
        }

        init();


        // returns the jQuery object to allow for chainability.  
        return this;

    }; // plugin end

})(jQuery);  
