window.addEvent('domready', function ()
{
	var onglets = $$('#menu a') ,
		ssmenus = $$('#nav > div') ,
		btn_fermer = $$('.fermer_detail_onglet') ;
	
	// réinitialisation des onglets et ssmenus
	function reinit()
	{
		onglets.each(function(el)
		{
			el.removeClass("selected") ;
		}) ;
		ssmenus.each(function(el)
		{
			el.tween('top', 265) ;
		}) ;
	}
	
	
	onglets.each(function(onglet)
	{
		onglet.addEvent('click', function(e)
		{			
			e = new Event(e).stop() ;
			
			var ouvert = onglet.hasClass("selected") ;
			var ssmenu = $("detail_onglet" + onglet.id.substr(6, 1)) ;		
			
			reinit() ;			

			if (!ouvert)
			{
				ssmenu.setStyle('display', 'block') ;
				ssmenu.tween('top', 0) ;			
				onglet.addClass("selected") ;
			}
		}) ;		
	}) ;
	
	btn_fermer.each(function(btn)
	{
		btn.addEvent('click', function(e)
		{			
			e = new Event(e).stop() ;
			reinit() ;
		}) ;		
	}) ;
}) ;

window.addEvent('domready', function() 
{	
	function changeSlide (el, el_suivant)
	{		
		myFx = new Fx.Tween (el, {'link' : 'chain'}).start('opacity', 0) ;
		myFx2 = new Fx.Tween (el_suivant, {'link' : 'chain'}).start('opacity', 1) ;
		$$('#carrousel li a').each(function(item)
		{
			item.removeClass('btn_on') ;
		}) ;
		
		stop() ;
		start() ;
	}
	
	if ($('carrousel'))
	{
		var carrousel = $('carrousel') ;		
		var items = $$("#carrousel > .item") ;
		var first_item = items[0] ;
		var last_item = items.getLast('.item') ;
		var suivant = $('suiv') ;		
		var precedent = $('prec') ;
		var liste_controle = new Element('ul#controle') ;
		var compteur = 1 ;
		var tempo = 5000 ;
		
		first_item.store('first', 1) ;
		last_item.store('last', 1) ;
		
		
		var start = function() {interval = nextSlide.periodical(tempo);} ;
		var stop = function() {clearInterval(interval);} ;
		
		var nextSlide = function() {
			var compteur2 = 0 ;			
			items.each(function(item)
			{				
				if (item.getStyle('opacity') == 1)
				{	
					item_select = items[compteur2] ;
					item_select_suivant = items[compteur2 + 1] ;
					page_actuelle = compteur2 + 2 ;
				}
				compteur2++ ;
			}) ;
			
			if (item_select.retrieve('last') != 1)
			{
				changeSlide(item_select, item_select_suivant) ;
				$('btn_item_' + page_actuelle).addClass('btn_on') ;
			}
			else 
			{
				changeSlide(last_item, first_item) ;
				$('btn_item_1').addClass('btn_on') ;
			}
		} ;
		
		
		// Création des boutons et clonnage du div pour gérer l'opacité en css
		items.each(function(item)
		{
			item.set('id', 'item_' + compteur) ;
			item.setStyle('opacity', 0) ;
			

			var li = new Element('li') ;
			
			var a = new Element('a', {
				'id': 'btn_item_' + compteur,
				'href': "#",
				'html': '&nbsp;',
				'events': {
					'click': function(e){	
						e = new Event(e).stop() ;
						
						var compteur2 = 0 ;	
						items.each(function(it)
						{				
							if (it.getStyle('opacity') == 1)
							{	
								it_select = items[compteur2] ;
								btn_select = compteur2 ;
							}
							compteur2++ ;
						}) ;
						
						changeSlide(it_select, item) ;
	
						this.addClass('btn_on') ;
					}
				}
			}); 
			
			if (compteur == 1) a.addClass('btn_on') ;
			
			a.inject(li);
			li.inject(liste_controle) ;
			
			compteur++ ;
			
			// Transparence
			var div = item.getChildren('div') ;
			var clone = div[0].clone().inject(item, 'top') ;
			clone.addClass('trans') ;
		}) ;		
		
		liste_controle.inject(carrousel) ;
		
		// Pause/start lors du passage de la souris
		carrousel.addEvents(
		{
			mouseenter: function()
			{
				stop() ;
			},
			mouseleave: function()
			{
				start() ;
			}
		}) ;
		
		first_item.setStyle('opacity', 1) ;
		
		start() ;
	}
	
	//######
	// Raccourcis
	//######
	$$('.raccourcis .tout').each(function(e)
	{
		var dev = e.getNext('.dev') ;
		var raccourcis = e.getParent('.raccourcis') ;
		
		e.addEvent('click', function(e)
		{
			e = new Event(e).stop() ;
			dev.toggleClass('cache') ;
		}) ;
	}) ;
	
	//######
	// Raccourcis
	//######
	if ($('mot_HP'))
	{
		$('mot_HP').addEvent('focus', function()
		{
			if ($('mot_HP').value == 'Saisissez vos mots clés')
			{
				$('mot_HP').value = '' ;
				$('mot_HP').removeClass('mot_HP') ;
			}
		}) ;
		
		$('mot_HP').getParent('form').addEvent('submit', function()
		{
			if ($('mot_HP').value == 'Saisissez vos mots clés')
			{
				$('mot_HP').value = '' ;
			}
		}) ;
	}
}) ;


// Actu liées (contenu froid)
window.addEvent('domready', function() 
{
	if ($('actu_liees'))
	{
		var items_actu = $$('.wrapper a') ;
		var item_margin = 420 ;
		var mobile = $('mobile') ;
		var btn_next = $('suivant') ;
		var btn_previous = $('precedent') ;
		var autotime = 5000 ;
		var duration = 2000 ;
		var tete_lecture = 0 ;

		var nb_item = items_actu.length - 1 ;	// -1 pour rester caler sur l'index de item_largeur
		
		var item_largeur = new Array() ;
		var items_largeur = 0 ;		
		items_actu.each(function(item){
			item_largeur.push(item.getSize().x + item_margin) ;
			items_largeur += item.getSize().x + item_margin ;
		}) ;
		
		mobile.setStyle('width', 20000) ;

		var myFx_actu = new Fx.Tween(mobile, {transition: Fx.Transitions.Quad.easeInOut, duration: duration}) ; //Fx.Transitions.linear

		function next()
		{
				if (tete_lecture >= nb_item)
				{
					tete_lecture = 0 ;
					myFx_actu.start('left', '0') ;
				}
				else
				{
					pos_x_mobile = mobile.getStyle('left').toInt() ;
					new_pos = pos_x_mobile - item_largeur[tete_lecture] ;
					myFx_actu.start('left', new_pos) ;
					tete_lecture++ ;
				}	
		}
		
		function previous()
		{
			if (tete_lecture <= 0)
			{
				tete_lecture = nb_item ;
				myFx_actu.start('left', -(items_largeur - item_largeur[tete_lecture])) ;
			}
			else
			{
				tete_lecture-- ;
				pos_x_mobile = mobile.getStyle('left').toInt() ;
				new_pos = pos_x_mobile + item_largeur[tete_lecture] ;
				myFx_actu.start('left', new_pos) ;		
			}
		}
		
		btn_next.addEvents({
			click: function(){next()},
			mouseover: function(){this.setStyle('cursor', 'pointer')}
		})		
		btn_previous.addEvents({
			click: function(){previous()},
			mouseover: function(){this.setStyle('cursor', 'pointer')}
		})
		
		// autoslide
		next.periodical(autotime) ;
	}
}) ;
