News = new Class({
    initialize: function(dateString){		
		
		this.timePause = 5000;
		this.speed = 500;
		this.transition =  Fx.Transitions.Back.easeOut;
		
		
		this.listeEl =  $$('#news .bloc')
		this.lenghtEl = this.listeEl.length;
		this.heightEl = 63;
		
		this.height = $('news').offsetHeight;
		
		this.iCount = 1
		this.iMax = 3; 
		
		this.jCount = 1
		this.jMax =  Math.ceil( this.lenghtEl/this.iMax );
		
				  		
		this.initEls(); 
    },
	//=====================================
	// parametrage de la liste des elements
	//===================================== 
	initEls: function(){
	 	if(this.lenghtEl > this.iMax) 
			this.listeEl.setStyles({top:this.height*3,position:"absolute"})	
    }, 
	//=====================================
	// Index de lecture la liste des elements
	//===================================== 
	getIndexEl: function(){
		var i = (this.iCount+( this.iMax* (this.jCount-1) ));
		if( i > this.lenghtEl )	 i -= this.lenghtEl	;
		
		return (i-1);	  
    },
	updateICount: function(){
	    if(this.iCount >= this.iMax)
			this.iCount = 1;
		else
			this.iCount++;

    },
	updateJCount: function(){
		if(this.jCount >= this.jMax)
			this.jCount = 1;
		else
			this.jCount++;
    },
    stopTimer: function(){
        $clear(this.dalay);
    }, 
	tweenIn: function(){
		
		var el = this.listeEl[ this.getIndexEl() ]
				
		var tween = new Fx.Morph(el, {duration:this.speed, wait:false,transition: this.transition});
		tween.set({top:this.height}) 
		tween.start({top: this.heightEl * ( this.iCount-1 ) })  
		
		
		this.updateICount();	
		
		if(this.iCount == 1) 
			this.delay = this.tweenOut.delay(this.timePause, this);
		else
			this.delay = this.tweenIn.delay(this.speed, this);
		
    },
	tweenOut: function(){
      
		var el = this.listeEl[this.getIndexEl()]
			
		var tween = new Fx.Morph(el, {duration:this.speed, wait:false,transition: this.transition});
		tween.start({top: this.heightEl*-1})    
	
		 
		this.updateICount();
		
		if(this.iCount == 1){ 
			this.updateJCount();
			this.delay = this.tweenIn.delay(this.speed, this);
		}else{
			this.delay = this.tweenOut.delay(this.speed, this);
		}
		
    },
	
	start:function(){
		if(this.lenghtEl > this.iMax) 
			this.delay = this.tweenIn.delay(this.speed, this);
	}
	
});	
  



Glossaire = new Class({
    initialize: function(els){		
		this.els = $$(els)
		this.initEls();
    },
	//=====================================
	// parametrage de la liste des elements
	//===================================== 
	initEls: function(){
	
		this.els.each(function(element,index) {  
			var content = element.get('title').split('::');  
			element.store('tip:title', content[0]);  
			element.store('tip:text', content[1]);  
		});  
	
		var tipz = new Tips($$('acronym'),{  
	         className: 'tipz',  
	         fixed: true,  
	         hideDelay: 50,  
	         showDelay: 50  
	     }); 
		 
		 
		tipz.addEvents({  
			'show': function(tip) {  
			tip.fade('in');  
			},  
			'hide': function(tip) {  
			tip.fade('out');  
			}  
		});  
   
    
    }
});


window.addEvent('domready', function() {
	

	
	/*
	* Annimation des Navigateur
	*/
	
	var select = -1; var array = $$('#nav li');
	//recuperation de l'onglet qui doit etre active
	array.each(function(obj,i){
			if(obj.getAttribute("select") == 1 )
				select = i; 	
	});
		  
	/*
	* annimation des lien de la colone de gauche
	*/
	var list = $$('#col-left li');
	list.each(function(el) {
		
		var initPadding = el.getStyle("padding-left").toInt();
		
		var morph = new Fx.Morph(el,{duration:100, wait:false,transition: Fx.Transitions.Sine.easeInOut});
		el.addEvent('mouseenter', function(){
			morph.start({	'padding-left': (initPadding+10)+"px" });
		});
	 
		el.addEvent('mouseleave', function(){
			morph.start({	'padding-left':initPadding+"px"	});
		});				
	 
	});	
   	
	
	//new News().start();
	new SmoothScroll();	   
	new Glossaire('acronym');
	
});

