/*******

	***	imageSlider by Cedric Dugas	***
	*** Http://www.position-absolute.com ***
	
	Slide your image gallery without effort with this script
	
	You can use and modify this script for any project you want, but please leave this comment as credit.

*****/
$(document).ready(function() {

	nSliders=$('.slider').size();
	var oSliders=new Object();
	for(var i=0;i<nSliders;i++){
		var thisContainer=$('.slider:eq('+i+')');
		padding = 0
		if (thisContainer.attr("id") == "animVertical"){
			var animSide = "top"
		}else{
			var animSide ="left"
		}
		oSliders[i]=new rotateDiv(i, padding, thisContainer, animSide);
	}
});

function rotateDiv(num, padding, jqContainer, animSide){
	this.animSide = animSide
	this.numero=num;
	this.jqContainer=jqContainer;
    this.headline_size;
	this.animPos = 0;
	this.headlineNum = 0;
	this.oldHeadline = 0;
	this.divPos=0;
	this.side = 0;
	this.divWidth = 0;
	this.position = 0;
	this.divPadding = padding;
	
	if (this.animSide == "top"){ // place les items du sens voulu
		this.divWidth = jqContainer.find("div.items:eq(0)").height() + this.divPadding;
	} else {
		this.divWidth = jqContainer.find("div.items:eq(0)").width() + this.divPadding;
	}
	
	this.headline_size = jqContainer.find("div.items").size();
	this.headline_sizeMinusOne = jqContainer.find("div.items").size() -1;
	for(x=0;x<this.headline_size; x++){
		jqContainer.find("div.items:eq(" + x + ")").css(this.animSide, this.position);
		this.position = this.position + this.divWidth;
	}
	jqContainer.find("a.moveLeft").click(associateObjWithEvent(this,"move"));
	jqContainer.find("a.moveRight").click(associateObjWithEvent(this,"move"));
}
rotateDiv.prototype.move=function(e, o)  {

	//quel sens? depend du a clique
	var classe=o.getAttribute('name');
	var sens=classe=='moveLeft'?-1:1;

    itemContainer = this.jqContainer.find('.containerItems'); 
	this.multipleWidth = this.divWidth * this.headline_size;

    if ((this.side ==0 && sens==-1) || (this.side ==1 && sens==1)){
		this.divPos=this.divPos - (sens * this.multipleWidth);
		this.side=!this.side;
	}
	this.animPos = this.animPos +(sens* this.divWidth) ; //on incremente la position target du div selon le mouvement que l'on veut

    var animation=new Object();
	animation[this.animSide]=this.animPos;

	if(sens==-1){
		var passeObject=this;

		itemContainer.animate(animation,200,
            function bouge() {
				itemContainer.children().eq(passeObject.oldHeadline).css(passeObject.animSide, passeObject.divPos);
				passeObject.divPos = passeObject.divPos + passeObject.divWidth;
				passeObject.headlineNum = (passeObject.oldHeadline + 1 ) % (passeObject.headline_size);

				passeObject.oldHeadline = passeObject.headlineNum;
		});
	} else {
        this.headlineNum = (this.oldHeadline +this.headline_size-1) % (this.headline_size);
        this.oldHeadline = this.headlineNum;
		this.divPos = this.divPos - (sens * this.divWidth);
		this.jqContainer.find("div.items:eq(" + this.headlineNum + ")").css(this.animSide, this.divPos);

		this.jqContainer.find("div.containerItems").animate(animation,200);
	}
return false;
}
function associateObjWithEvent(obj, methodName){
    return (function(e){
        e = e||window.event;
        return obj[methodName](e, this);
    });
}



/*** 
    Simple jQuery Slideshow Script
    Released by Jon Raasch (jonraasch.com) under FreeBSD license: free to use or modify, not responsible for anything, etc.  Please link out to me if you like it :)
***/

function slideSwitch() {
    var $active = $('#slideshow IMG.active');

    if ( $active.length == 0 ) $active = $('#slideshow IMG:last');

    // use this to pull the images in the order they appear in the markup
    var $next =  $active.next().length ? $active.next()
        : $('#slideshow IMG:first');

    // uncomment the 3 lines below to pull the images in random order
    
    // var $sibs  = $active.siblings();
    // var rndNum = Math.floor(Math.random() * $sibs.length );
    // var $next  = $( $sibs[ rndNum ] );


    $active.addClass('last-active');

    $next.css({opacity: 0.0})
        .addClass('active')
        .animate({opacity: 1.0}, 1000, function() {
            $active.removeClass('active last-active');
        });
}

$(function() {
    setInterval( "slideSwitch()", 5000 );
});



















