/**
 * (c) Ackwa.fr 2011
 */
$().ready(function() {
    /*
     * Champs avec une "valeur par défaut descriptive"
     *
     * @ack  Ne fonctionne pas ici sur le focus ?
     */
    $('.default').live('click', function() {
        $(this).val('');
        $(this).removeClass('default');
    });

    /*
     * Création du Slider de la page d'accueil
     */
    if ($('#coda-slider-1').length) $('#coda-slider-1').codaSlider({
        autoHeight: false,
        dynamicArrows: false,
        dynamicTabs: false,
        autoSlideInterval: 4000,
        autoSlideStopOver: true,
        slidedFunction: function (ui) {
            $('a.xtrig').each(function(index) {
                if (ui == (index + 1)) {
                    $(this).addClass('act');
                }
                else {
                    $(this).removeClass('act');
                }
            });
           
        }
    });

    /*
     * Création du Slider temoignage Paroles d'entrepreneur
     */
    if ($('#coda-slider-2').length) $('#coda-slider-2').codaSlider({
        autoHeight: true,
        dynamicArrows: false,
        dynamicTabs: false,
        autoSlide: false,
        autoSlideInterval: 4000,
        autoSlideStopOver: false,
        slidedFunction: function (ui) {
            $('a.xtrig').each(function(index) {
                if (ui == (index + 1)) {
                    $(this).addClass('on');
                }
                else {
                    $(this).removeClass('on');
                }
            });

        }
    });
    
    /*
     * Création des actions pour les "Belles histoires" et les "Marchés"
     */
    if ($('a.onoff').length || $('img.onoff').length) {
        /*
         * Cas du simple "On/Off"
         */
        if ($('div.onoff').length) {
            /*
             * L'on masque tous les DIV "On/Off" puis l'on (ré)affiche le 1er
             */
            $('div.onoff').hide();
            $('div.onoff:first').show();

            /*
             * Au clic l'on affiche le DIV demandé et l'on masque les autres
             */
            $('a.onoff').live('click', function() {
                $('div.onoff').hide();
                $('#onoff-'+$(this).attr('rel')).show();
                return false; // L'action par défaut (ie ancre #) ne doit pas être exécutée
            });
        }

        /*
         * Cas du mode "Random" pour les "belles histoires"
         */
        if ($('div.rand').length) {
            /*
             * L'on masque tous les DIV "Random" puis l'on (ré)affiche les 3 premiers
             */
            var iMax = 3;

            /*
             * L'on masque tous les DIV "Random" puis l'on (ré)affiche les 3 premiers
             */
            $('div.rand').hide();
            $('div.rand').each(function(iPos) {
                if (iPos < 3) $(this).show();
            });

            /*
             * Au clic l'on affiche les DIV demandés et l'on masque les autres
             *
             * @ack  A position sur le a une version "liens" comme "Marchés"
             */
            $('img.onoff').live('click', function() {
                /*
                 * L'on masque tout
                 */
                $('div.rand').hide();

                /*
                 * L'on mélange les histoires
                 */
                var tmp = [];
                $('div.rand').each(function(){
                    tmp.push($(this));
                });
                tmp = $.shuffle(tmp);
                
                /*
                 * Recherche des 3 premières histoires
                 */
                var iCnt  = 0;
                //var iKind = $(this).attr('rel');
                var iKind = $('input[type=radio]:checked').attr('value');
                for(i = 0; i < tmp.length; i++){
                    if ((0 == iKind) ||(iKind == tmp[i].attr('rel'))) {
                        if (iCnt++ < 3) tmp[i].show();
                    }
                }
                //$('#titre-histoires').text($(this).text());
                $('.hlib').removeClass('checked');
                $('#lib-'+iKind).addClass('checked');
                $('#titre-histoires').text($('#lib-'+iKind).text());
                return false; // L'action par défaut (ie ancre #) ne doit pas être exécutée
            });
        }
    }
    
    /*
     * Capture des actions sur les liens externes
     *
     * @info  En mode live pour les pages affichées via le sitemap
     *        ou la recherche
     */
    $('a.extern').live('click', function() {
        window.open($(this).attr('href'));
        return false;
    });
    $('a.pdf').live('click', function() {
        window.open($(this).attr('href'));
        return false;
    });

    /*
     * Capture clic sur "Recherche"
     */
    $('#search').click(function() {
        //$(this).value();
    });
    
    /*
     * Initialisation des accordéons et de la "lightbox"
     */
    $('#accordeon').accordion({ autoHeight: false ,active: false, collapsible: true  });
    $('a.lb01').lightBox({fixedNavigation:true});
    $('a.lb02').lightBox({fixedNavigation:true});

    /*
     * Dans la page accordéon, le témoignage est masqué
     */
    if ($('dt.dttitre').length) $('.tertiary').hide();

    /*
     * Calage pour IE7
     *
     * @ack  - Position du menu de niveau 1 et pourtant même Height, Position, Offset, Margin et Padding !?
     *       - Alignement "liens journaliste"
     */
    var mo = 565;
    var ua = $.browser;
    if (ua.msie && (parseInt(ua.version.slice(0, 1)) <= 7)) {
        $('#header .menu').css('padding-top', '24px');
        $('#header .home').css('margin-top', '-24px');
        $('#header .niv2').css('margin-top', '-16px');
        //$('#header .journalistes li').css('padding-right', '12px');
    }

    /*
     * Capture du survol du menu en haut à droite (1er niveau)
     */
    if ( ua.msie && (parseInt(ua.version.slice(0, 1)) <= 6)) {
        $('div.menu ul.niv1 li').mouseenter(function() {
            $(this).addClass('active');
        });
        $('div.menu ul.niv1 li').mouseleave(function() {
            $(this).removeClass('active');
        });
        $('div.menu').mouseenter(function() {
            $('.active').addClass('actived2');
        });
        $('div.menu').mouseleave(function() {
            $('.actived2').addClass('active');
        });
        mo = 595;
    }
    else {
        $('div.menu').mouseenter(function() {
            $('.active').addClass('actived');
            $('.actived').removeClass('active');
        });
        $('div.menu').mouseleave(function() {
            $('.actived').addClass('active');
            $('.active').removeClass('actived');
        });
    }

    /*
     * Pleine largeur au survol du menu en haut à droite (2nd niveau)
     */
    $('.niv2 li a').hover(function() {
        var width = $(document).width();
        $(this).width(width - mo);
    });

    /*
     * Passage en pleine largeur pour le menu actif en haut à droite (2nd niveau)
     */
    var width = $(document).width();
    $('.niv2 li.active a').width(width - mo);
});

/**
 * Mélange des données d'un tableau
 *
 * @see   http://yelotofu.com/2008/08/jquery-shuffle-plugin
 */
(function($){
  $.fn.shuffle = function() {
    return this.each(function(){
      var items = $(this).children();
      return (items.length)
        ? $(this).html($.shuffle(items))
        : this;
    });
  }
 
  $.shuffle = function(arr) {
    Math.random();
    for(
      var j, x, i = arr.length; i;
      j = parseInt(Math.random() * i),
      x = arr[--i], arr[i] = arr[j], arr[j] = x
    );
    return arr;
  }
})(jQuery);
