window.addEvent('domready', function() {
    // REMOOZ : Zoom images cliquable (dans texte éditable)
    $$('div.formatting a').each(function(element) {

        // Constructor, takes the element and options as arguments
        new ReMooz(element, {
            origin: element.getElement('img'), // Take the image inside as origin for the zooming element
            centered: true, // Zoom the center of the screen
            shadow: 'onOpenEnd',
            resizeFactor: 0.8,  // resize to maximum 80% of screen size
            cutOut: false,      // don't hide the original
            opacityResize: 0.4, // opaque resize
            dragging: false
        });
        /**
        * Note on "shadow": value can be true, onOpenEnd (appear after resize) and false, to disable shadow
        */

    });

    // ACCORDION : Liste des avis de décès
    var cap_accordion = {
        launch: function(toggles, content, index) {
            // tests des valeurs
            if (toggles && content) {
                initAccordion(toggles, content, index);
            }

            // initialisation de l'accordéon
            function initAccordion(toggles, content, index) {
                var AccordionObject = new Accordion(toggles, content, {
                    duration: 1000,
                    transition: Fx.Transitions.Quart.easeInOut,
                    display: index,
                    onActive: function(toggles, content) {
                        // ajout du cssClass 'active' quand l'élément correspondant est ouvert
                        toggles.addClass('active');
                    },
                    onBackground: function(toggles, content) {
                        // suppression du cssClass 'active' quand l'élément correspondant est fermé
                        toggles.removeClass('active');
                    }
                });
            }

            // ouverture d'un élément au passage de la souris, avec un délais + CssClass appropriés
            toggles.addEvents({
                'mouseenter': function() {

                    // ajout du cssClass hover
                    if (this.hasClass('active')) {
                        this.addClass('activeHover');
                    } else {
                        this.addClass('hover');
                    }

                    // ajout du status pour le delais d'ouverture du contenu
                    this.setProperty('status', 'wait');

                    // ouverture du contenu après un certain delais
                    function openAccordion() {
                        if (this.getProperty('status') == 'wait') {
                            // ouverture de l'element
                            this.fireEvent('click');
                            // suppression du status pour le delais d'ouverture du contenu
                            this.removeProperty('status');
                        }
                    };
                    openAccordion.bind(this).delay(800);

                },

                'mouseleave': function() {

                    // suppression du cssClass hover
                    this.removeClass('hover');
                    this.removeClass('activeHover');

                    // suppression du status pour le delais d'ouverture du contenu
                    this.removeProperty('status');

                }
            });

        }
    }

    cap_accordion.launch($$('.accordion .togglers'), $$('.accordion .elements'), 0);
});




