﻿/* -------------------------------------------------
Document JavaScript
Author : IEB - Kahiloa Solutions & communications
------------------------------------------------- */
$(function() {
    $('.left img').hover(function() {
        var currentImg = $(this).attr('src');
        $(this).attr('src', $(this).attr('data-hover'));
        $(this).attr('data-hover', currentImg);
		
    }, function() {
        var currentImg = $(this).attr('src');
        $(this).attr('src', $(this).attr('data-hover'));
        $(this).attr('data-hover', currentImg);
		
    });
}) 


if ($("#slider").get(0)){
	function manageControls(position){
		if(position==0){ $('#leftControl').hide() } else{ $('#leftControl').show() }
		if(position==numberOfSlides-1){ $('#rightControl').hide() } else{ $('#rightControl').show() }
	}

	  var currentPosition = 0;
	  var slideWidth = 630;


	  var slides = $('#slider').find("article");
	  var numberOfSlides = slides.length;

	  $('.articleInside').css('overflow', 'hidden');

	  slides
		.wrapAll('<div id="content-slides"></div>')

		.css({
		  'float' : 'left',
		  'width' : slideWidth
		});

	  $('#content-slides').css('width', slideWidth * numberOfSlides);

	  $('#slider')
		.prepend('<a href="javascript:void(0)" id="leftControl" class="control"><img src="images/slideLeft.png" alt="précédent" /></a>')
		.append('<a href="javascript:void(0)" id="rightControl" class="control"><img src="images/slideRight.png" alt="suivant" /></a>');
	  $('#slider2')
		.prepend('<a href="javascript:void(0)" id="leftControl" class="control"><img src="images/slideLeft.png" alt="précédent" /></a>')
		.append('<a href="javascript:void(0)" id="rightControl" class="control"><img src="images/slideRight.png" alt="suivant" /></a>');
		
	  manageControls(currentPosition);

	  $('.control')
		.bind('click', function(){
		currentPosition = ($(this).attr('id')=='rightControl') ? currentPosition+1 : currentPosition-1;
		
		manageControls(currentPosition);
		$('#content-slides').animate({
		  'marginLeft' : slideWidth*(-currentPosition)
		});
	  });

}

if ($("#nav").get(0)){
(function($) {
$.event.special.mousewheel = {
	setup: function () {
		var handler = $.event.special.mousewheel.handler;
		if ($.browser.mozilla) $(this).bind('mousemove.mousewheel', function (event) {
			$.data(this, 'mwcursorposdata', {
				pageX: event.pageX,
				pageY: event.pageY,
				clientX: event.clientX,
				clientY: event.clientY
			});
		});
		if (this.addEventListener) this.addEventListener(($.browser.mozilla ? 'DOMMouseScroll' : 'mousewheel'), handler, false);
		else this.onmousewheel = handler;
	},
	teardown: function () {
		var handler = $.event.special.mousewheel.handler;
		$(this).unbind('mousemove.mousewheel');
		if (this.removeEventListener) this.removeEventListener(($.browser.mozilla ? 'DOMMouseScroll' : 'mousewheel'), handler, false);
		else this.onmousewheel = function () {};
		$.removeData(this, 'mwcursorposdata');
	},
	handler: function (event) {
		var args = Array.prototype.slice.call(arguments, 1);
		event = $.event.fix(event || window.event);
		$.extend(event, $.data(this, 'mwcursorposdata') || {});
		var delta = 0,
			returnValue = true;
		if (event.wheelDelta) delta = event.wheelDelta / 120;
		if (event.detail) delta = -event.detail / 3;
		if ($.browser.opera) delta = -event.wheelDelta;
		event.data = event.data || {};
		event.type = "mousewheel";
		args.unshift(delta);
		args.unshift(event);
		return $.event.handle.apply(this, args);
	}
};
$.fn.extend({
	mousewheel: function (fn) {
		return fn ? this.bind("mousewheel", fn) : this.trigger("mousewheel");
	},
	unmousewheel: function (fn) {
		return this.unbind("mousewheel", fn);
	}
});

$.fn.lavaLamp = function(o) {
    o = $.extend({ fx: "linear", speed: 500, click: function(){} }, o || {});
	

	
    return this.each(function() {
        var me = $(this), noop = function(){},
            $back = $('<li class="back"><div class="left"></div></li>').appendTo(me),
            $li = $("li", this), curr = $("li.current", this)[0] || $($li[0]).addClass("current")[0];

        $li.not(".back").hover(function() {
            move(this);
        }, noop);

        $(this).hover(noop, function() {
            move(curr);
        });

        $li.click(function(e) {
            setCurr(this);
            return o.click.apply(this, [e, this]);
        });

        setCurr(curr);

        function setCurr(el) {
            $back.css({ "left": el.offsetLeft+"px", "width": el.offsetWidth+"px" });
            curr = el;
        };

        function move(el) {
            $back.each(function() {
                $.dequeue(this, "fx"); }
            ).animate({
                width: el.offsetWidth,
                left: el.offsetLeft
            }, o.speed, o.fx);
        };

    });
};
})(jQuery);

}
