// remap jQuery to $
(function($){})(window.jQuery);

//tab effects
var TabbedContent = {
    init: function() {
        $(".tab_item").first('span').addClass('active');
        $(".tab_item").hover(function() {
            /*var background = $(this).parent().find(".moving_bg");

            $(background).stop().animate({
                left: $(this).position()['left']
            }, {
                duration: 300
            }); */
            $(this).parent().find('span').removeClass('active');
            $(this).addClass('active');
            TabbedContent.slideContent($(this));
        });
    },
    slideContent: function(obj) {
        var margin = $(obj).parent().parent().find(".slide_content").width();
        margin = margin * ($(obj).prevAll().size());
        margin = margin * -1;
        $(obj).parent().parent().find(".tabslider").stop().animate({
            marginLeft: margin + "px"
        }, {
            duration: 300
        });
    }
}

//Image slider Horizontal
var ImageHslider = {
    init: function() {
        var counter = $('.hslider_images').find('a').length;
        if(counter>3){
            $(".hslider_arrow_prev").hover(function() {
                $(this).addClass('hover');
            },
            function () {
                $(this).removeClass('hover');
            });
            $(".hslider_arrow_next").hover(function() {
                $(this).addClass('hover');
            },
            function () {
                $(this).removeClass('hover');
            });
            $(".hslider_arrow_prev").click(function() {
                ImageHslider.slideImages($(this), 1);
            });
            $(".hslider_arrow_next").click(function() {
                ImageHslider.slideImages($(this), -1);
            });
        } else {
            $(".hslider_arrow_prev, .hslider_arrow_next").hide();
        }
        $(".hslider_images a").hover(function() {
            ImageHslider.switchImage($(this));
        });
    },
    slideImages: function(obj,value) {
        var largeur = $(obj).parent().parent().find("a").width(); // recupère la largeur des photos
        var decalage = $(obj).parent().parent().find(".hslider_images").css('marginLeft'); // récupère la position du bloc
        var margin = value * largeur; // calcule la marge à appliquer
        var counter = $(obj).parent().parent().find("a").length;
        var scrollmax = (counter-3) * largeur * -1;

        if(counter > 3 && ((parseInt(decalage)==0 && margin<0) || (parseInt(decalage)>scrollmax && parseInt(decalage)<0) || (parseInt(decalage)==scrollmax && margin>0))){
            $(obj).parent().parent().find(".hslider_images").stop().animate({
                marginLeft: "+=" + margin + "px"
            }, {
                duration: 100
            });
        }
    },
    switchImage: function(obj) {
        var url = $(obj).attr('href');
        $('.bigimage a').attr('href', url);
        $('.bigimage img').attr('src', url);
    }
}

//Image slider Vertical
var ImageVslider = {
    init: function() {
        $(".vslider_arrow_prev").hover(function() {
                $(this).addClass('hover');
            },
            function () {
                $(this).removeClass('hover');
            });
        $(".vslider_arrow_next").hover(function() {
                $(this).addClass('hover');
            },
            function () {
                $(this).removeClass('hover');
            });
        $(".vslider_images a").hover(function() {
                $(this).append('<span class="zoom">');
            },
            function () {
                $('span').remove('.zoom');
            });
        $(".vslider_images img").each(function(){
            $(this).css('margin-left',($(this).width()/-2));
        });
        $(".vslider_arrow_prev").click(function() {
            ImageVslider.slideImages($(this), 1);
        });
        $(".vslider_arrow_next").click(function() {
            ImageVslider.slideImages($(this), -1);
        });
    },
    slideImages: function(obj,value) {
        var hauteur = $(obj).parent().parent().find("a").height(); // recupère la hauteur des photos
        var decalage = $(obj).parent().parent().find(".vslider_images").css('marginTop'); // récupère la position du bloc
        var margin = value * hauteur; // calcule la marge à appliquer
        var counter = $(obj).parent().parent().find("a").length;
        var scrollmax = (counter-1) * hauteur * -1;

        if(counter > 1 && ((parseInt(decalage)==0 && margin<0) || (parseInt(decalage)>scrollmax && parseInt(decalage)<0) || (parseInt(decalage)==scrollmax && margin>0))){
            $(obj).parent().parent().find(".vslider_images").stop().animate({
                marginTop: "+=" + margin + "px"
            }, {
                duration: 250
            });
        }
    }
}


/* trigger when page is ready */
$(document).ready(function (){

    var obj = { 'notre-service':'immortalisez vos souvenirs', 'notre-gamme':'la collection de nos produits', 'la-boutique':'choisissez votre livre', 'actualite':'toutes l\'information du site' };

    $.each(obj, function(li, texte){
        $("." + li + " a").append('<small>' + texte + '</small>');
    });

    $('#slides').slides({
        preload: true,
        preloadImage: '../img/loading.gif',
        play: 5000,
        pause: 2500,
        hoverPause: true,
        generateNextPrev: true
    });

    TabbedContent.init();
    ImageHslider.init();
    ImageVslider.init();

});

/* optional triggers

$(window).load(function() {

});

$(window).resize(function() {

});

*/
