
jQuery(document).ready(function(){

	// initialisation du menu tete
	var menuTete = $('#contenant-menu > .menu');
	
	// hauteur du sous menu le plus grand
	var maxSousMenuHeight = 0;
	// duree max de l'animation du sous menu
	var maxSousMenuAnimationDuration  = 400;
	
	jQuery.each(menuTete.children('li'),function(){
		// si lien
		if(	$(this).children('a') 
			&& ( $(this).attr('class') !='separateur')
		){
			//si sous menu
			if($(this).children('div').length){
				
				//var sousMenuWidth = $(this).css('width');
				var sousMenuWidth = $(this).width()+'px';
				
				// on initialise la largeur du sous menu a celle du menu
				$(this).children('div').css('width',sousMenuWidth);
				
				/*
				if(sousMenuWidth == 'auto'){
					sousMenuWidth ='100%';
				}
				*/
				
				$(this).children('div').children('div').css('width',sousMenuWidth);
				$(this).children('div').children('div').children('a').css('width',sousMenuWidth);
				$(this).children('div').children('div').css('width',sousMenuWidth);
				$(this).children('div').children('div').children('.sous_menu').css('left',sousMenuWidth);
				
				$(this).children('div').children('div').children('.sous_menu').children('div').children('.sous_menu').css('left',sousMenuWidth);
				
				//debug($(this).children('div').children('div').children('a').css('top'));
				//$(this).children('div').children('div').children('.sous_menu').css('top',sousMenuWidth);
				
				// recuperation de la hauteur du sous menu le plus grand
				var sousMenuHeight = $(this).children('.sous_menu').height();
				if(sousMenuHeight>maxSousMenuHeight){
					maxSousMenuHeight = sousMenuHeight;
				};
			}	
		}
		
		//$('#sous_menu_14 > ').children('.bas_sous_menu').children('tr').children('.centre').html('test');
			
	});	
	
	//$('#sous_menu_14 > .bas_sous_menu > tbody > tr > .centre').html('test');
	$('#sous_menu_14 > * .centre').html('<div class="icone_gamme"></div>');
	$('#sous_menu_29 > * .centre').html('<div class="icone_reseau"></div>');
	$('#sous_menu_36 > * .centre').html('<div class="icone_expertise"></div>');
	
	menuLien = menuTete.children('li');
	
	menuLien.hover(
		function(){

			$(this).children('a').addClass('rollover');
			var sousMenu = $(this).children('.sous_menu');
			$('.sous_menu').each(function(k,v){
				if($(v).attr('id')!=sousMenu.attr('id')){
						hideSousMenu($(v));
				}
			});
			showSousMenu(sousMenu);
		},
		function(){
			$(this).children('a').removeClass('rollover');
			var sousMenu = $(this).children('.sous_menu');
			hideSousMenu(sousMenu);
		}
	);
	sousMenuLien = $('.sous_menu').children('div');
	
	sousMenuLien.hover(
		function(){

			$(this).children('a').addClass('rollover');
			var sousMenu = $(this).children('.sous_menu');
			
			//debug(sousMenu.length);
			
			$(this).parent('DIV').children('DIV').children('.sous_menu').each(function(k,v){
				if($(v).attr('id')!=sousMenu.attr('id')){
						hideSousMenu($(v),"left");
				}
			});
			showSousMenu(sousMenu,"left");
		},
		function(){
			$(this).children('a').removeClass('rollover');
			var sousMenu = $(this).children('.sous_menu');
			hideSousMenu(sousMenu,"left");
		}
	);
	
	function debug(txt){
		var today=new Date();
		var h=today.getHours();
		var m=today.getMinutes();
		var s=today.getSeconds();
			$('#debug').html($('#debug').html()+'<br/>'+h+':'+m+':'+s+' > '+txt);
			$('#debug').attr({ scrollTop: $('#debug').attr("scrollHeight") });
	};
	
	$('#debug').dblclick(
		function(e){
		
			if($('#debug').css('left')=='0px'){
				$('#debug').stop(false,true).animate({left: "-450px"},400);
				//$('#debug').css('left','-450px');
			}else{
			$('#debug').stop(false,true).animate({left: "0px"},400);
			//	$('#debug').css('left','0px');
			}
			
		}
	);
	
	//Lightbox prettyPhoto
	$("a.diaporama").attr("rel","prettyPhoto[gallery]");
	
	if($("a[rel^='prettyPhoto']").size()>0) {
		
		$("a[rel^='prettyPhoto']").prettyPhoto({
			animationSpeed: 'normal', /* fast/slow/normal */
			padding: 30, /* padding for each side of the picture */
			opacity: 0.40, /* Value betwee 0 and 1 */
			showTitle: false, /* true/false */
			allowresize: true, /* true/false */
			counter_separator_label: '/', /* The separator for the gallery counter 1 "of" 2 */
			theme: 'light_rounded', /* light_rounded / dark_rounded / light_square / dark_square */
			hideflash: false, /* Hides all the flash object on a page, set to TRUE if flash appears over prettyPhoto */
			modal: false, /* If set to true, only the close button will close the window */
			changepicturecallback: function(){}, /* Called everytime an item is shown/changed */
			callback: function(){} /* Called when prettyPhoto is closed */
		});
	}
	
	
	// calcule la duree de l'animation du sous menu par raport au sous menu le plus haut
	function getDurationAnimeSousMenu(sousMenu){
		return maxSousMenuAnimationDuration*(sousMenu.height()/maxSousMenuHeight);
	}
	
	function showSousMenu(sousMenu,direct){
		//
		if(!direct){
			direct = 'up';
		}
		if(sousMenu.css('display')=='none' || sousMenu.attr('animationFermeture')==true){
			
			if(!jQuery.browser.msie){
				if(sousMenu.css('top')!='0px'){
					sousMenu.css('top','0px');
				}
			}
			sousMenu.attr('animationOuverture',true);
			sousMenu.stop(true,true).effect('slide',{ direction: direct,mode: "show",easing:"easeOutBounce" },getDurationAnimeSousMenu(sousMenu),	
				function(){
					$(this).attr('animationOuverture',false);
				}
			);	
		}
	}
	
	function hideSousMenu(sousMenu,direct){
		if(!direct){
			direct = 'up';
		}
		if(sousMenu.css('display')!='none'){
			if(jQuery.browser.msie && jQuery.browser.version<8){
				sousMenu.hide();
			}else{
				sousMenu.attr('animationFermeture',true);
				sousMenu.stop(true,true).effect('slide',{ direction: direct,mode: "hide",easing:"easeInExpo" },getDurationAnimeSousMenu(sousMenu),
					function(){
						$(this).attr('animationFermeture',false);
						
					}
				);
			}
		}
	}
	


	
	var menuLangue = $('#drapeau');
	menuLangue.children('li').children('a').hover(
		function(){
			shake($(this),3,2,450);
		/*
			$(this).stop(false,true)
				.animate({marginTop: "-=3px"},50)
				.animate({marginTop: "+=6px"},100)
				.animate({marginTop: "-=3px"},200);
			*/	
		},
		function(){
	
		}
	);
	

	function shake(element,max,times,duration){
		var str ='element.stop(false,true)';
		var inc =1;
		var duree = duration/(times*4);
		var portion = max/times;
		
		while (inc<=times){
			var multiplicateur = times+1-inc;
			pixel = portion*multiplicateur;
			
			str +='.animate({marginTop: "-='+pixel+'px"},'+duree+')';
			str +='.animate({marginTop: "+='+(pixel*2)+'px"},'+(duree*2)+')';
			str +='.animate({marginTop: "-='+pixel+'px"},'+duree+')';
			
			inc++;
			
		};
		debug (str);
		eval(str);
	}
	
});

