$(document).ready(function() {                  	

	// CUFON REPLACEMENT
	Cufon.replace('#navbar li a, h1.name', { fontFamily: 'Zekton' }); 
	
	Cufon.replace('#main h2, #main h4', { fontFamily: 'PT Sans Narrow' }); 
	
	Cufon.replace('#navbar li a span, .post h3 a, a.read_more, #sidebar h3, #main h3', { fontFamily: 'PT Sans' }); 
	
	
	Cufon.replace('a.button', {
	fontFamily: 'PT Sans',
	textShadow: '1px 1px #434343'
	});

	//NAVIGATION "DROPDOWN" SCRIPT
	$('#navbar ul').css({display: "none"}); 
	$('#navbar li').hover(function(){
		$(this).find('ul:first').css({visibility: "visible", display: "none"}).fadeIn('fast');
		},function(){
		$(this).find('ul:first').css({visibility: "hidden"});
		});	
		
	
	//SHOW THE LOADER AND HIDE FIRST IMAGE IN THE SLIDESHOW UNTIL ALL IMAGES ARE LOADED (SEE THE WINDOW.LOAD FUNCTION BELOW FOR THE SLIDESHOW SCRIPT)
	
	$('#bg img').css('display', 'none');
	$('body').append('<span id="body_loader"></span>');	
	$('#body_loader').fadeIn();
	$('#bg').append('<div class="grid"></div>');  
	
	//RANDOM IMAGE ON PAGE LOAD 	
	$.randomImage = {
		defaults: {
			
			//you can change these defaults to your own preferences.
			path: 'images/', //change this to the path of your images
			myImages: ['background1.jpg', 'background2.jpg', 'background3.jpg', 'background4.jpg', 'background5.jpg' ] //put image names in this bracket. 
			
		}			
	}
	
	$.fn.extend({
			randomImage:function(config) {	
				var config = $.extend({}, $.randomImage.defaults, config); 
				 return this.each(function() {		
						var imageNames = config.myImages;	
						//get size of array, randomize a number from this
						// use this number as the array index
						var imageNamesSize = imageNames.length;
						var lotteryNumber = Math.floor(Math.random()*imageNamesSize);
						var winnerImage = imageNames[lotteryNumber];
						var fullPath = config.path + winnerImage;
						//put this image into DOM at class of randomImage
						// alt tag will be image filename.
						$(this).attr( {
										src: fullPath,
										alt: winnerImage
									});	
				});	
			}
	});
	
		
	//run the random script
	$('.random').randomImage();
	
	//random image script ends here
	

	//ALL THE THINGS HAPPEN AFTER AJAX LOAD   
	var afterLoad = function() { 
			
		//darken the background so it doesn't catch too much attention (but wait 1 second before)
		setTimeout(function(){ 
			var docHeight = $(document).height();
		 	$('.grid').height(docHeight);  		 	                 
            $('.grid').fadeIn('fast');   
            $('#bg').fadeTo('fast', .8);          
        }, 1000); 
	       
		   
		/*$("#gallery_fancybox ul li a").fancybox({
			'overlayOpacity'	: '0.8',
			'overlayColor' 		: 'black',
			'transitionIn' : 'none',
			'transitionOut' : 'none'
		});	   */
		   
		//load fancybox and options
      	$("#gallery_fancybox ul li a.image").fancybox({
			'overlayOpacity'	: '0.8',
			'overlayColor' 		: '#333333',
			'transitionIn' : 'none',
			'transitionOut' : 'none'
		});	
		
		$("#gallery_fancybox ul li a.video").fancybox({
			'overlayOpacity'	: '0.8',
			'overlayColor' 		: '#333333',
			'transitionIn' : 'none',
			'transitionOut' : 'none',
			'type'	: 'swf'
		});	
		
		$("#gallery_fancybox ul li a.html").fancybox({
			'width'				: 720,
		'height'			: 570,
        'autoScale'     	: false,
        'transitionIn'		: 'none',
		'transitionOut'		: 'none',
		'overlayOpacity'	: '0.8',
		'overlayColor' 		: '#333333',
		'type'				: 'iframe'
		});
		
		$("#gallery_fancybox ul li a.videotmp").fancybox({
			'width'				: 580,
		'height'			: 360,
        'autoScale'     	: false,
        'transitionIn'		: 'none',
		'transitionOut'		: 'none',
		'overlayOpacity'	: '0.8',
		'overlayColor' 		: '#333333',
		'type'				: 'iframe'
		});
		
			
		        
        //refresh Cufon (very important!)   			
     	Cufon.refresh();
        
       	// fade in loaded content (main div)	
		$('#loader').fadeOut();	
		$('#main').fadeIn();	
		
		//fade out 'hide menu link'
		$('#hide_menu a').fadeOut();
   		 

        //GALLERY IMAGES HOVER SCRIPT
			
			//add span that will be shown on hover on gallery item
			$("#gallery_fancybox li a.image, #gallery_colorbox li a.image").append('<span class="image_hover"></span>'); //add span to images
			$("#gallery_fancybox li a.video, #gallery_colorbox li a.video").append('<span class="video_hover"></span>'); //add span to videos
			$("#gallery_fancybox li a.videotmp, #gallery_colorbox li a.videotmp").append('<span class="video_hover"></span>'); //add span to videos
			$("#gallery_fancybox li a.pdf, #gallery_colorbox li a.pdf").append('<span class="image_hover"></span>'); //add span to pdf
			$("#gallery_fancybox li a.html, #gallery_colorbox li a.html").append('<span class="image_hover"></span>'); //add span to html
			$("#gallery_fancybox li a.webtv, #gallery_colorbox li a.webtv").append('<span class="video_hover"></span>'); //add span to webtv
	
			$('#gallery_fancybox li a span, #gallery_colorbox li a span').css('opacity', '0').css('display', 'block') //span opacity = 0 
			
			
			
			// show / hide span on hover
			$("#gallery_fancybox li a, #gallery_colorbox li a").hover(
				 function () {
					 $(this).find('.image_hover, .video_hover').stop().fadeTo('slow', .7); }, 
				function () {
			  		  $('.image_hover, .video_hover').stop().fadeOut('slow', 0);
			});
			
			
			/*$("#gallery_fancybox a.pdf, #gallery_colorbox a.pdf").append('<span class="image_hover"></span>'); //add span to pdf
			$('#gallery_fancybox a.pdf span, #gallery_colorbox a.pdf span').css('opacity', '0').css('display', 'block') //span opacity = 0 
			$("#gallery_fancybox a.pdf, #gallery_colorbox li a.pdf").hover(
				 function () {
					 $(this).find('.image_hover, .video_hover').stop().fadeTo('slow', .7); }, 
				function () {
			  		  $('.image_hover, .video_hover').stop().fadeOut('slow', 0);
			});*/
			
			
			
		
		
		
		
			
				
						
	
    	//FORM (RDV) SCRIPT

			//set variables
			var socVal = $("#form_soc").val();
			var nomVal = $("#form_nom").val();			
			var prenomVal = $("#form_prenom").val();
			var fonctionVal = $("#form_fonction").val();
			var telVal = $("#form_tel").val();
			var emailVal = $("#form_email").val();
			var messageVal = $("#form_message").val();
			var invVal = $("#form_inv").val();
			//var nameVal = $("#form_name").val();	
			
			//if name field is empty, show label in it
			if(invVal == '') {
			$("#form_inv").parent().find('label').css('display', 'block');	
			}	
			
			//if name field is empty, show label in it
			if(socVal == '') {
			$("#form_soc").parent().find('label').css('display', 'block');	
			}	
			
			//if name field is empty, show label in it
			if(nomVal == '') {
			$("#form_nom").parent().find('label').css('display', 'block');	
			}	
			
			//if name field is empty, show label in it
			if(prenomVal == '') {
			$("#form_prenom").parent().find('label').css('display', 'block');	
			}	
			
			//if name field is empty, show label in it
			if(fonctionVal == '') {
			$("#form_fonction").parent().find('label').css('display', 'block');	
			}
			
			//if name field is empty, show label in it
			if(telVal == '') {
			$("#form_tel").parent().find('label').css('display', 'block');	
			}	
			
			//if email field is empty, show label in it
			if(emailVal == '') {
			$("#form_email").parent().find('label').css('display', 'block');	
			}
						
			
			//if name field is empty, show label in it
			/*if(nameVal == '') {
			$("#form_name").parent().find('label').css('display', 'block');	
			}*/
			
			//if message field is empty, show label in it
			if(messageVal == '') {
			$("#form_message").parent().find('label').css('display', 'block');	
			}

					
			//hide labels on focus		
			$('form input, form textarea').focus(function(){
				$(this).parent().find('label').fadeOut('fast');		
			});
			
			//show labels when field is not focused - only if there are no text
			$('form input, form textarea').blur(function(){
		
				var currentInput = 	$(this);	
				if (currentInput.val() == ""){
	   			 $(this).parent().find('label').fadeIn('fast');
	 			 }
			});		
			
			
			// FORM HANDLING SCRIPT - WHEN USER CLICKS "SUBMIT"
			$("#form_submit").click(function(){		
						   				 		
				// hide all error messages
				$(".error").hide();
				
				// remove "error" class from text fields
				$("form input, form textarea").focus(function() {
		 			$(this).removeClass('error_input');
					});
				
				// remove error messages when user starts typing		
				$("form input, form textarea").keypress(function() {
		 			$(this).parent().find('span').fadeOut();	
					});
					
				$("#form_message").keypress(function() {	
					$(this).animate({ 
  			  			width: "380px"
 			 		}, 100); 
				});	
				
				
				// set variables
				var hasError = false;
				var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
				
				
				// validate "societe" field
				var socVal = $("#form_soc").val();
				if(socVal == '') {
					$("#form_soc")
					.after('<span class="error">*</span>')
					.addClass('error_input')				  
					hasError = true;
				}
				
				// validate "nom" field
				var nomVal = $("#form_nom").val();
				if(nomVal == '') {
					$("#form_nom")
					.after('<span class="error">*</span>')
					.addClass('error_input')				  
					hasError = true;
				}
				
				// validate "prenom" field
				var prenomVal = $("#form_prenom").val();
				if(prenomVal == '') {
					$("#form_prenom")
					.after('<span class="error">*</span>')
					.addClass('error_input')				  
					hasError = true;
				}
				
				// validate "expert" field
				/*var expertchk = $("input[name='expert']:checked").val();
				if(expertchk == null) {
					$("#form_expert")
					.after('<span class="error">*</span>')
					.addClass('error_input')				  
					hasError = true;
				}*/
				
				
				// validate "fonction" field
				var telVal = $("#form_tel").val();
				if(telVal == '') {
					$("#form_tel")
					.after('<span class="error">*</span>')
					.addClass('error_input')				  
					hasError = true;
				}
			
			
				// validate "e-mail" field - andd error message and animate border to red color on error
				var emailVal = $("#form_email").val();
				if(emailVal == '') {
					$("#form_email")
					.after('<span class="error">*</span>')
					.addClass('error_input')
					hasError = true; 
						
				} else if(!emailReg.test(emailVal)) {	
					$("#form_email")
					.after('<span class="error">E-mail non valide</span>')
					.addClass('error_input')
					hasError = true;
				}
				
						
				// validate "message" field
				/*var messageVal = $("#form_message").val();
				if(messageVal == '') {
					$("#form_message")
					.animate({ 
  			  			width: "250px"
 			 		}, 100 )
					.after('<span class="error comment_error">*</span>')
					.addClass('error_input')
					hasError = true;
				}*/
				
		                // if the are errors - return false
		                if(hasError == true) { return false; }
		            
				// if no errors are found - submit the form with AJAX
				if(hasError == false) {
					
				var dataString = $('#contact_form').serialize();
		
					//hide the submit button and show the loader image	
					$("#form_submit").fadeOut('fast', function () {
					$('#contact_form').append('<span id="loader"></span>'); 
					});
					       
			
					
				// make an Ajax request
		        $.ajax({
		            type: "POST",
		            url: "php/pre-send.php",
		            data: dataString,
		            success: function(){ 
		           
		         
				  
		          $('#loader').remove();
		          $('#contact_form').children().fadeOut('fast');
		          $('.contact_info').fadeOut('fast');
		           $('.successrdv').fadeIn();   	
		            }
		        }); 
				// end ajax
		
				 return false;  
				} 	
				
			});		
			
			
			
			// FORM HANDLING SCRIPT - WHEN USER CLICKS "SUBMIT"
			$("#formins_submit").click(function(){		
						   				 		
				// hide all error messages
				$(".error").hide();
				
	
				$(".errorjour").hide();
				
				// remove "error" class from text fields
				$("form input, form textarea").focus(function() {
		 			$(this).removeClass('error_input');
					});
				
				// remove error messages when user starts typing		
				$("form input, form textarea").keypress(function() {
		 			$(this).parent().find('span').fadeOut();	
					});
					
				$("#form_message").keypress(function() {	
					$(this).animate({ 
  			  			width: "380px"
 			 		}, 100); 
				});	
				
				
				// set variables
				var hasError = false;
				var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
				
				
				// validate "societe" field
				var socVal = $("#form_soc").val();
				if(socVal == '') {
					$("#form_soc")
					.after('<span class="error">*</span>')
					.addClass('error_input')				  
					hasError = true;
				}
				
				// validate "nom" field
				var nomVal = $("#form_nom").val();
				if(nomVal == '') {
					$("#form_nom")
					.after('<span class="error">*</span>')
					.addClass('error_input')				  
					hasError = true;
				}
				
				// validate "prenom" field
				var prenomVal = $("#form_prenom").val();
				if(prenomVal == '') {
					$("#form_prenom")
					.after('<span class="error">*</span>')
					.addClass('error_input')				  
					hasError = true;
				}
				
				
				// validate "jour" field
				var marchk = $("input[name='mardi']:checked").val();
				var merchk = $("input[name='mercredi']:checked").val();
				if(marchk == null && merchk == null) {
					$("#form_jour")
					.after('<span class="errorjour">&nbsp;Choisir au moins 1 journ&eacute;e</span>')		  
					hasError = true;
				}
				
				// validate "themes" field
				var tabth = new Array();
				var nochecked = 0;
				tabth = [document.getElementById('theme1').checked, 
												 document.getElementById('theme2').checked,
												 document.getElementById('theme3').checked,
												 document.getElementById('theme4').checked,
												 document.getElementById('theme5').checked,
												 document.getElementById('theme6').checked,
												 document.getElementById('theme7').checked,
												 document.getElementById('theme8').checked,
												 document.getElementById('theme14').checked,
												 document.getElementById('theme9').checked,
												 document.getElementById('theme10').checked,
												 document.getElementById('theme11').checked,
												 document.getElementById('theme12').checked,
												 document.getElementById('theme13').checked,
												 document.getElementById('theme15').checked	
												 ];
				var tablg = tabth.length;
				for (var i = 0; i < tablg; i++) {
						if (tabth[i]) {
							nochecked++;
						}
					}
	
				if(nochecked == 0) {
					$("#form_themes")
					.after('<span class="errorjour">&nbsp;Choisir au moins 1 th&egrave;me</span>')		  
					hasError = true;
					
				}
            	
				// validate "fonction" field
				var fonctionVal = $("#form_fonction").val();
				if(fonctionVal == '') {
					$("#form_fonction")
					.after('<span class="error">*</span>')
					.addClass('error_input')				  
					hasError = true;
				}
				
				// validate "fonction" field
				var telVal = $("#form_tel").val();
				if(telVal == '') {
					$("#form_tel")
					.after('<span class="error">*</span>')
					.addClass('error_input')				  
					hasError = true;
				}
				
			
				// validate "e-mail" field - andd error message and animate border to red color on error
				var emailVal = $("#form_email").val();
				if(emailVal == '') {
					$("#form_email")
					.after('<span class="error">*</span>')
					.addClass('error_input')
					hasError = true; 
						
				} else if(!emailReg.test(emailVal)) {	
					$("#form_email")
					.after('<span class="error">E-mail non valide</span>')
					.addClass('error_input')
					hasError = true;
				}
				
						
				// validate "message" field
				var messageVal = $("#form_message").val();
				if(messageVal == '') {
					$("#form_message")
					.animate({ 
  			  			width: "250px"
 			 		}, 100 )
					.after('<span class="error comment_error">*</span>')
					.addClass('error_input')
					hasError = true;
				}
				
		                // if the are errors - return false
		                if(hasError == true) { return false; }
		            
				// if no errors are found - submit the form with AJAX
				if(hasError == false) {
					
				var dataString = $('#contact_form').serialize();
		
					//hide the submit button and show the loader image	
					$("#formins_submit").fadeOut('fast', function () {
					$('#contact_form').append('<span id="loader"></span>'); 
					});
					       
					
				// make an Ajax request
		        $.ajax({
		            type: "POST",
		            url: "php/ins-send.php",
		            data: dataString,
		            success: function(){ 
		           
		          // on success fade out the form and show the success message
				  
		          $('#loader').remove();
		          $('#contact_form').children().fadeOut('fast');
		          $('.contact_info').fadeOut('fast');
		           $('.success').fadeIn();    	
		            }
		        }); // end ajax
		
				 return false;  
				} 	
				
			});	
			
			
			// FORM QUEST HANDLING SCRIPT - WHEN USER CLICKS "SUBMIT"
			$("#formquest_submit").click(function(){		
						   				 		
				// hide all error messages
				$(".error").hide();
				
				
				// remove "error" class from text fields
				$("form input, form textarea").focus(function() {
		 			$(this).removeClass('error_input');
					});
				
				// remove error messages when user starts typing		
				$("form input, form textarea").keypress(function() {
		 			$(this).parent().find('span').fadeOut();	
					});
					
				$("#form_message").keypress(function() {	
					$(this).animate({ 
  			  			width: "380px"
 			 		}, 100); 
				});	
				
				
				// set variables
				var hasError = false;
				var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
				
				
				// validate "societe" field
				var socVal = $("#form_soc").val();
				if(socVal == '') {
					$("#form_soc")
					.after('<span class="error">*</span>')
					.addClass('error_input')				  
					hasError = true;
				}
				
				// validate "nom" field
				var nomVal = $("#form_nom").val();
				if(nomVal == '') {
					$("#form_nom")
					.after('<span class="error">*</span>')
					.addClass('error_input')				  
					hasError = true;
				}
				
				// validate "prenom" field
				var prenomVal = $("#form_prenom").val();
				if(prenomVal == '') {
					$("#form_prenom")
					.after('<span class="error">*</span>')
					.addClass('error_input')				  
					hasError = true;
				}
				
			
				// validate "e-mail" field - andd error message and animate border to red color on error
				var emailVal = $("#form_email").val();
				if(emailVal == '') {
					$("#form_email")
					.after('<span class="error">*</span>')
					.addClass('error_input')
					hasError = true; 
						
				} else if(!emailReg.test(emailVal)) {	
					$("#form_email")
					.after('<span class="error">E-mail non valide</span>')
					.addClass('error_input')
					hasError = true;
				}
				
						
				// validate "message" field
				var messageVal = $("#form_message").val();
				if(messageVal == '') {
					$("#form_message")
					.animate({ 
  			  			width: "250px"
 			 		}, 100 )
					.after('<span class="error comment_error">*</span>')
					.addClass('error_input')
					hasError = true;
				}
				
		         // if the are errors - return false
		         if(hasError == true) { return false; }
		            
				// if no errors are found - submit the form with AJAX
				if(hasError == false) {
					
				var dataString = $('#contact_form').serialize();
		
					//hide the submit button and show the loader image	
					$("#form_submit").fadeOut('fast', function () {
					$('#contact_form').append('<span id="loader"></span>'); 
					});
					       
					
				// make an Ajax request
		        $.ajax({
		            type: "POST",
		            url: "php/quest-send.php",
		            data: dataString,
		            success: function(){ 
		           
		          // on success fade out the form and show the success message
				  
		          $('#loader').remove();
		          $('#contact_form').children().fadeOut('fast');
		          $('.contact_info').fadeOut('fast');
		           $('.success').fadeIn();    	
		            }
		        }); // end ajax
		
				 return false;  
				} 	
				
			});	
			
					
 } //afterLoad ends here	
	

	//LOAD CONTENT WITH AJAX                  
    $("#navbar li").delegate("a:not(.index)", "click", function() {
        window.location.hash = $(this).attr("href");
        return false;
    
    });
	
	
	//Test lancement
	$("a.video_invit").fancybox({									
			'overlayOpacity'	: '0.8',
			'overlayColor' 		: '#333333',
			'transitionIn' : 'none',
			'transitionOut' : 'none',
			'type'	: 'swf'
		});	
	
	$("a.actu").fancybox({									
			'width'				: 454,
			'height'			: 454,
			'autoScale'     	: false,
			'transitionIn'		: 'none',
			'transitionOut'		: 'none',
			'overlayOpacity'	: '0',
			'overlayColor' 		: '#333333',
			'hideOnContentClick': true,
			'scrolling'			: 'no',
			'type'				: 'iframe'
		});	
			
	
	//Fin test lancement
    
       
    
 	$(window).bind('hashchange', function(){

		var hash = window.location.hash.substr(1);

        toLoad = hash + " #main"
        
        toBg = hash + " #bg img.active"
               
        if (hash) {
        	
        	$('#main').fadeOut('fast', function () {
				
	//we'll be loading #main div	
            
            $('#main_wrap').fadeIn('normal', function (){   
            			
            	$(this).css('filter',''); 
            	            	       
			       $('#bg img.active').css('display', 'inline');
				            		 	           	
            //add loader  
           	$('#main_wrap').append('<span id="loader">Loading...</span>');  	
           	$('#loader').fadeIn('fast');
  
			  //load main itself
			$('#main').load(toLoad, '', afterLoad); 
			});
		})
				
		
		$("#navbar li a")
		.css('color', '#a3a3a3')
			.find('span')
			.css('color', '#555555');
			
    	
		$("#navbar li a[href="+hash+"]")
        	.css('color', 'white')
				.find('span')
				.css('color', '#aaaaaa');
        	      	
        $("#navbar li ul li a[href="+hash+"]")
        	.parents('li')
	        	.find('a:first')
	        	.css('color', 'white')
        	.parents('li.top_nav')
	        	.find('span')
	        	.css('color', '#aaaaaa');
			
		} else {
			
			//Ouverture invit
		//$("a.video_invit").trigger('click');
		$("a.actu").trigger('click');
		//fin ouverture invit
		};
        
	
		
		
		
                                            
 });
 
 	//TRIGGER HASHCHANGE EVENT
	$(window).trigger('hashchange');
	       
	//if link has class 'not' link - prevent default behaviour (make it unclickable)
	$('#navbar li a.not_link').click(function(event){
		event.preventDefault();
		});   
         
    
	//CONTACT PAGE MAP - CHANE OPACITY ON HOVER
		$('img.map').css('opacity', '.5');
		
		$('img.map').hover(function(){
			$(this).fadeTo('fast', 1);
			
		},
		function(){
		$(this).fadeTo('fast', .5);	
		
		});


}); //document.ready function ends here



//WAIT UNTIL CONTENT IS LOADED
$(window).load(function() {
	 
	//hide loader
	$('#body_loader').hide().remove();
	
	//fade in the image
	$('#bg img').fadeIn('normal');
	   	
});




	


