$(document).ready(function(){
	
	/**
	 *  Effets de hover sur les différents blocs du site 
	 */
	var animation = {
		init : function(){
			// Initialisation des infos (logos + txt) dont l'opacité doit être à 0
			$(this).children('.info').animate({ opacity:'0' });
			
			// Interaction des blocs bleus
			$('#content').delegate('a.home_hover', 'mouseover', function() { $(this).animate({ opacity: "0.7" }, 0); });
			$('#content').delegate('a.home_hover', 'mouseleave', function() { $(this).animate({ opacity: "1" }, 150); });
			
			$('#content').delegate('a.home_hover', 'mouseover', function() { 
				$(this).animate({ opacity:'0.7' },{ duration: 10,  specialEasing: { width: 'linear', height: 'easeOutBounce' }	} );
			});
			$('#content').delegate('a.home_hover', 'mouseleave', function() {
				$(this).animate({ opacity:'1' },{ duration: 300,  specialEasing: { width: 'linear', height: 'easeOutBounce' } } );
			});
			
			// Interaction des blocs gris
			$('#sidebar_right').delegate('a.bloc_col_right', 'mouseover', function() { $(this).animate({ backgroundColor: "#d6d6d6", color: "#ffffff" }, 10); }); 
			$('#sidebar_right').delegate('a.bloc_col_right', 'mouseleave', function() { $(this).animate({ backgroundColor: "#ebebeb", color: "#666666" }, 300); });
			
			// Interaction des blocs - page philosophie
			$('#content').delegate('a.btn_philo', 'mouseover', function() { $(this).animate({ opacity: "0.7" }, 10); }); 
			$('#content').delegate('a.btn_philo', 'mouseleave', function() { $(this).animate({ opacity: "1" }, 300); });
			
			// Interaction des blocs pubs (taille moyenne)
			$('#content').delegate('a.hover', 'mouseover',
				function() {
					$(this).children('.info').css({ 'display':'block' });
					$(this).children('.info').children('.bg_info').animate({ opacity:'0.8' },{ duration: 0,  specialEasing: { width: 'linear', height: 'easeOutBounce' } } );
					$(this).children('.info').animate({ opacity:'1' },{ duration: 0,  specialEasing: { width: 'linear', height: 'easeOutBounce' } } );
					
					// on retire la class de sélection du menu à gauche de chacun des éléments du sous-menu 'Portfolio'
					//$('#menu li ul li a').removeClass('nv_gch_on');
					
					// puis on ajoute la classe au sous-élément du menu 'portfolio' idoine
					if( $(this).hasClass('marketing') ) $('#menu li a.marketing').addClass('nv_gch_on');
					else if( $(this).hasClass('communication_commerciale') ) $('#menu li a.communication_commerciale').addClass('nv_gch_on');
					else if( $(this).hasClass('communication_institutionnelle') ) $('#menu li a.communication_institutionnelle').addClass('nv_gch_on');
					else if( $(this).hasClass('publishing') ) $('#menu li a.publishing').addClass('nv_gch_on');
					else if( $(this).hasClass('image') ) $('#menu li a.image').addClass('nv_gch_on');
					else if( $(this).hasClass('plan_media') ) $('#menu li a.plan_media').addClass('nv_gch_on');
					else if( $(this).hasClass('web') ) $('#menu li a.web').addClass('nv_gch_on');
					else if( $(this).hasClass('packaging') ) $('#menu li a.packaging').addClass('nv_gch_on');
					
					
					// Alignement vertical de la typo dans chaque bloc
					$('a div.info h5').each( function() {
											  
					var hauteur = ( $(this).parent().css('height') );
					hauteur = hauteur.replace('px', '');
					var hauteur_titre = ( $(this).css('height') );
					hauteur_titre = hauteur_titre.replace('px', '');
					
					var hauteur_final = ( ( hauteur - hauteur_titre ) / 2 );	
					$(this).css('top', hauteur_final + 'px' );
					
					})
				}
			);
			// Désactivation des classes de sélection sur le menu de gauche lorsqu'un rollOut est détecté sur les vignettes contenues dans la page
			$('#content').delegate('a.hover', 'mouseleave',
				function() {
					if( $(this).hasClass('marketing') ) $('#menu li ul li a').removeClass('nv_gch_on');
					else if( $(this).hasClass('communication_commerciale') ) $('#menu li ul li a').removeClass('nv_gch_on');
					else if( $(this).hasClass('communication_institutionnelle') ) $('#menu li ul li a').removeClass('nv_gch_on');
					else if( $(this).hasClass('publishing') ) $('#menu li ul li a').removeClass('nv_gch_on');
					else if( $(this).hasClass('image') ) $('#menu li ul li a').removeClass('nv_gch_on');
					else if( $(this).hasClass('plan_media') ) $('#menu li ul li a').removeClass('nv_gch_on');
					else if( $(this).hasClass('web') ) $('#menu li ul li a').removeClass('nv_gch_on');
					else if( $(this).hasClass('packaging') ) $('#menu li ul li a').removeClass('nv_gch_on');
					
					$(this).children('.info').animate({ opacity: 0 },300, function(){ $(this).css({ 'display':'none' });
			});
																																
		})}
	};
	  
	/**
	 * Lancement du carroussel depuis les pages Mosaiques
	 */
	var carrousselLaunch = {	
		// ajouter un loader
		init: function(){
			$('#content').delegate('.mosaicLink, .actualiteLink', 'click', function(event){
				event.preventDefault();
				
				/* cas actu */
				if($('.actualiteLink').length > 0){
					$('.actualiteLink').hide();
				}
				
				var $content = $('#content');
				var $loader = $('<div id="loader"><img src="./images/loader.gif" /></div>');
				$loader.css({'opacity': 0.7});
				$loader.appendTo($('#content'));
				
				var reg = new RegExp(/#(.*)/);
				var url_item = reg.exec($(this).attr('href'));
				
				var from = $(this).hasClass('actualiteLink') ? 'actualites' : 'mosaic';
				
				$.ajax({
					url: './ajax/load_page.ajax.php',
					type: 'POST',
					cache: false,
					data: { 
						'type' : 'carroussel',
						'from' : from,
						'url_item' : url_item[1] 
					},
					success: function(json){
						var $carroussel = $(json['carroussel']);
						$carroussel.css({
							'position': 'absolute',
							'z-index': -1,
							'top': 10,
							'opacity': 0
						}).appendTo($('#content'));
						setTimeout(function(){ 
							carroussel.init(true); 
							$carroussel.animate({'opacity': 1, 'z-index': 1}, 500, function(){
								$loader.remove();
							}); }
							, 700
						);
					}
				});
			});
		}
	};

	/**
	 *	Lancement du clip agence de la home page
	 */
	var clipLaunch = {
		launched: false,
		
		init: function(){
			var me = this;
			
			$('#content').delegate('#clip', 'click', function(event){
				event.preventDefault();
				
				if(me.launched == false){
					me.launched = true;
					$clip = $('#clip');
					$clip.children().remove();
					
					$('<div id="mediaplayer" />').appendTo($clip);
					var clip = document.createElement('script');
					clip.type = 'text/javascript';
					clip.src = './js/clip.js';
					$clip.append(clip);
				}
			});
		}
	}

	var CmlMap = {
		init: function(){
			var myCenter = new google.maps.LatLng(48.8028, 2.34349);
			
			var myOptions = {
				center: myCenter,
				zoom: 15,
				mapTypeId: google.maps.MapTypeId.ROADMAP
			};
			var map = new google.maps.Map(document.getElementById('map'), myOptions);

			var cmlMarker = new google.maps.Marker({
				position: myCenter,
				title: 'Comellink',
				map: map
			});

			// cmlMarker.setMap(map);
			
			/*
			var geocoder = new google.maps.Geocoder();
			geocoder.geocode({ 'address': '50 avenue Gabriel Peri, Arcueil'}, function(results, status){
				console.log(results[0].geometry.location.lat() + ' - ' + results[0].geometry.location.lng());
				console.log(results[0]);
			});
			*/
		}
	}

	// initialisation de Cufon
	var cufon = {
		init: function(){
			Cufon.replace('h1', { fontFamily: 'maPolice02' });
			Cufon.replace('h2', { fontFamily: 'maPolice01' });
			Cufon.replace('h3', { fontFamily: 'maPolice02' });
			Cufon.replace('h4', { fontFamily: 'maPolice01' });
			Cufon.replace('h5', { fontFamily: 'maPolice03' });
			Cufon.replace('h6', { fontFamily: 'maPolice02', hover: { color: '#18b9e8' } });	
		}
	};
	
	// Paramètres des animation en flash (nécessaire à l'utilisation de SwfObject)
	var params = {
		wmode : 'transparent'
	};
	
	/* ---- cufon ----------------------- */
	cufon.init();
	/* ---- animation des blocs --------- */
	animation.init()
	/* ---- menu ------------------------ */
	// menu.init();
	// menu est appelé de index.php pour ecriture des variables
	if($('#map').length > 0){
		CmlMap.init();	
	}
	
	contact.init();
	/* - objets définis dans cette page - */
	/* ---- transition des pages -------- */
	// pageTransition.init();
	/* ---- carroussel ------------------ */
	// initialisation du carroussel
	if($('#carroussel').length > 0){
		
		var $content = $('#content');
		var $loader = $('<div id="loader"><img src="./images/loader.gif" /></div>');
		$loader.css({'opacity': 1});
		$loader.appendTo($('#content'));
		
		setTimeout(function(){ 
				carroussel.init(); 
				$loader.fadeOut(function(){ $(this).remove(); });
			}, 700
		);
	}
	// l'appeler tout de même ici si on desactive pageTransition pour IE6 et IE7
	/* ----- carroussel depuis mosaique - */
	carrousselLaunch.init();
	/* ----- clip - page d'accueil - */
	clipLaunch.init();

	
});

