function mycarouselPhoto_initCallback(carousel)
{
    hoverStop (carousel);
    mycarousel_initCallback(carousel)

}

// Pause autoscrolling if the user moves with the cursor over the clip.
function hoverStop (carousel) {
    
    carousel.clip.hover(function() {
            carousel.stopAuto();
    }, function() {
            carousel.startAuto();
    });
}


//fonction de callback permettant de changer l'image en cliquant sur les bouton next & prev
function mycarouselLightbox_initCallback(carousel)
{
    var parent = carousel.list.context.id;
    $("#"+parent+" .jcarousel-item a").lightBox();     

    jQuery('#'+parent+'-next').bind('click', function() {
            carousel.next();      
            //on répète à chaque fois pour qu'il prenne en compte l'image courante et non la premiere
            $("#"+parent+" .jcarousel-item a").lightBox();     
            return false;
    });

    jQuery('#'+parent+'-prev').bind('click', function() {
            carousel.prev();
            $("#"+parent+" .jcarousel-item a").lightBox();     
            return false;
    });
}

//fonction de callback permettant de changer l'image en cliquant sur les bouton next & prev
function mycarousel_initCallback(carousel)
{
    var parent = carousel.list.context.id;  

    jQuery('#'+parent+'-next').bind('click', function() {
            carousel.next();        
            return false;
    });

    jQuery('#'+parent+'-prev').bind('click', function() {
            carousel.prev();
            return false;
    });
}






function carousselMap_initCallback(carousel)
{
     var parent = carousel.list.context.id;

        // Pause autoscrolling if the user moves with the cursor over the clip.
        jQuery('.nextMini').bind('click', function() {
                carousel.next();
                Cufon.replace('h2', { fontFamily: 'TradeGothicBoldCond' });
                Cufon.replace('h3', { fontFamily: 'ClanUltra' });
                return false;
        });

        jQuery('.prevMini').bind('click', function() {
                carousel.prev();
                Cufon.replace('h2', { fontFamily: 'TradeGothicBoldCond' });
                Cufon.replace('h3', { fontFamily: 'ClanUltra' });
                return false;
        });
}

function carousselMapClass_initCallback(carousel)
{


        // Pause autoscrolling if the user moves with the cursor over the clip.
        jQuery('.nextMini2').bind('click', function() {
                carousel.next();
                Cufon.replace('h2', { fontFamily: 'TradeGothicBoldCond' });
                Cufon.replace('h3', { fontFamily: 'ClanUltra' });
                return false;
        });

        jQuery('.prevMini2').bind('click', function() {
                carousel.prev();
                Cufon.replace('h2', { fontFamily: 'TradeGothicBoldCond' });
                Cufon.replace('h3', { fontFamily: 'ClanUltra' });
                return false;
        });
}



function jqueryNews(){
    jQuery('#newsList').jcarousel({
            vertical: true,
            scroll: 1,
            initCallback:mycarousel_initCallback
    });
}

//chargement basique de jcarousel
function loadSimpleCarrousel(id, callback, wrap, scroll) {
    $(id).jcarousel({
        visible: 1,
        scroll: scroll,
        wrap : wrap,
        buttonNextHTML: null,
        buttonPrevHTML: null,
        initCallback: callback,
        itemFallbackDimension: 300
    });
}



// FONCTION DE CHARGEMENT DES CAROUSELS VIA UN FICHIER TXT

function loadCarouselImg(id, urlTxt, totalImg, lightbox, dim) {

        jQuery(id).jcarousel({
                scroll: 1,
                buttonNextHTML: null,
                buttonPrevHTML: null,
                initCallback: function(carousel) {

                    hoverStop (carousel);

                    jQuery(id+'-next').bind('click', function() {

                        if(carousel.first < totalImg && carousel.first > 0) {
                            carousel.next();
                        } else {
                            return false;
                        }
                        
                        return false;
                    });

                    jQuery(id+'-prev').bind('click', function() {
                       if(carousel.first <= totalImg && carousel.first > 1) {
                           carousel.prev();
                       } else {
                           return false;
                       }
                       
                       return false;
                    });
                },
                itemLoadCallback: function(carousel) {

                    $.get(urlTxt, function(data) {
                        //renvoi les images
                        mycarousel_itemAddCallback(carousel, carousel.first, carousel.last, data, lightbox);

                        var tmpImageArray = new Array;
                        var tmp = data.split('|');

                        $.each(tmp,function(k,v){
                            var tmp2 = v.split(',');

                            if(tmp2[2]) tmpImageArray.push(new Array(tmp2[0],tmp2[2]));
                            else tmpImageArray.push(new Array(tmp2[0],''));
                        });

                        $(id+' a').lightBox({imageArray:tmpImageArray,activeImage:(carousel.first-1)});
                    });

                },
                itemFallbackDimension : dim
        });

}


// AJOUT DES ITEMS
function mycarousel_itemAddCallback(carousel, first, last, data, lightbox)
{
    // Simply add all items at once and set the size accordingly.
    var pipe = data.indexOf('|');

    var ind = first-1
    if(pipe > 0 ) {
        var items = data.split('|');


        if(items[ind]) {
            var content = items[ind].split(',');
            carousel.add(ind, mycarousel_getItemHTML(content, lightbox));
        }
        if(items[first]) {

            var contentNext = items[first].split(',');
             carousel.add(first, mycarousel_getItemHTML(contentNext, lightbox));
        }

    } else {
        var content  = data.split(',');
        carousel.add(ind, mycarousel_getItemHTML(content, lightbox));
    }

}

/**
 * Item html creation helper.
 */
function mycarousel_getItemHTML(content, lightbox)
{
    if(lightbox == true) return '<img src="' + content[1] + '" alt="" /><a class="plusGallerieFLM" href="'+content[0]+'" title="'+content[2]+'"><span>+</span></a>';
    else return '<img src="' + content + '" alt="" />';
}




// PAGE GALERIE PHOTOS

function mycarouselPhotoGalerie01_initCallback(carousel)
{

    $('#mycarouselPhotoGalerieMini01 a.mini').bind('click', function() {
            elementId = $(this).attr("id").replace ('mini01-', '');
            carousel.scroll(jQuery.jcarousel.intval(elementId)+1);
            
            var tmpImageArray = new Array;
            var tmp = carousel.list.context.children;

            $.each(tmp,function(k,v){
                            
                var Obj = $(v).context.children[1];
                //console.log(Obj);
                
                if(Obj) tmpImageArray.push(new Array($(Obj).attr('href'), $(Obj).attr('title')));
                //else tmpImageArray.push(new Array($(Obj).attr('src'), ''));
            });
   
            $(".jcarousel-item-"+(parseInt(elementId)+1)+" a").lightBox({imageArray:tmpImageArray,activeImage:$.jcarousel.intval(elementId)});            
    });

     mycarouselLightbox_initCallback(carousel);

}


//carousel de la liste miniatures
function mycarouselPhotoGalerieMini01_initCallback(carousel)
{
 
    
    jQuery('.next-mycarouselPhotoGalerieMini01').bind('click', function() { 
            carousel.next();
            return false;
    });

    jQuery('.prev-mycarouselPhotoGalerieMini01').bind('click', function() {      
            carousel.prev();            
            return false;
    });

}

function mycarouselPhotoGalerie02_initCallback(carousel)
{
         $('#mycarouselPhotoGalerieMini02  a.mini').bind('click', function() {
                elementId = $(this).attr("id").replace ('mini02-', '');
                carousel.scroll(jQuery.jcarousel.intval(elementId));
               
        });

        mycarousel_initCallback(carousel);

}
