jQuery(document).ready(function(){
	
	//-- Formulaire keep in touch
	
	//-- Valeurs par défaut du champ email
	jQuery('#newsletter-form input#newsletter').click(function(e) {
		if(this.value == 'Votre adresse email') {
			this.value = '';
			if( jQuery(this).hasClass('defaultLabel') ) {
				jQuery(this).removeClass('defaultLabel');
			}
		}
	});
	
	jQuery('#newsletter-form input#newsletter').focus(function(e) {
		if(this.value == 'Votre adresse email') {
			this.value = '';
			if( jQuery(this).hasClass('defaultLabel') ) {
				jQuery(this).removeClass('defaultLabel');
			}
		}
	});
	
	jQuery('#newsletter-form input#newsletter').blur(function(e) {
		if(this.value == '') {
			if( !jQuery(this).hasClass('defaultLabel') ) {
				jQuery(this).addClass('defaultLabel');
			}
			this.value = 'Votre adresse email';
		}
	});
	//--
	
	
	// Soumission du formualire en AJAX
	function submitForm(submitElement)
	{
		var pattern 	= new RegExp('([a-zA-Z0-9])+([\.a-zA-Z0-9_-])*@([\.a-zA-Z0-9_-])+(\.[a-zA-Z0-9]+)+','i');
     	var email 		= jQuery('#newsletter-form input#newsletter').val();

		if( email == 'Votre adresse email' ) {
			email = '';
		}

		if( email == '' || pattern.test(email) == false ) {
			
			submitElement.spinner('remove');
			setClassReturnMessage(true, "L'email n'est pas valide");
		
		} else {
			
			jQuery('#returnMessageNewsletter').hide();
		
			jQuery.ajax({
				type: 'POST',
				processData: true,
				url: jQuery('#newsletter-form').attr('action'),
				data: jQuery('#newsletter-form').serialize(),
				dataType: 'html',
				success: function(data) {
					
					if( jQuery(data).find('ul.messages li.success-msg').length > 0 ) {
						
						jQuery('input#newsletter').val('Votre adresse email');
						jQuery('input#newsletter').addClass('defaultLabel');
						jQuery('#newsletter-form').hide();
						
						setClassReturnMessage(false, "Votre inscription a bien été validée");
						
					} else {
						if( jQuery(data).find('span:contains("Cet email est déjà assigné à un utilisateur")').length > 0 ) {
							setClassReturnMessage(true, "Cet email est déjà enregistré");
						} else {
							setClassReturnMessage(true, "Une erreur est survenue");
						}
					}
					
					submitElement.spinner('remove');
					
					//jQuery('#returnMessageNewsletter p').delay(5000).fadeOut('slow'); // 5s
				},
				error: function(data) {
					submitElement.spinner('remove');
					setClassReturnMessage(true, "Une erreur est survenue");
				}
			});
		}
	}
	
	
	//-- Validation du formulaire
	jQuery('#newsletter-form button#submitNewsletter').click(function(e) {
		e.preventDefault();
		
		var opts = { 	position: 'center',
						hide: true,
						img: '/js/jQuery/spinner/spinner.gif'
					};
		jQuery(this).spinner(opts);
		
		submitForm(jQuery(this));
	});
	//--
	
	
	
	/*
	*	Messages d'erreurs JS
	*/
	function setClassReturnMessage(error, message)
	{
		jQuery('#returnMessageNewsletter').show();
		
		if(error) {
			
			if( jQuery('#returnMessageNewsletter p').hasClass('ok') ) {
				jQuery('#returnMessageNewsletter p').removeClass('ok');
				
			}
			
			jQuery('#returnMessageNewsletter p').addClass('error');
		} else {
			
			if( jQuery('#returnMessageNewsletter p').hasClass('error') ) {
				jQuery('#returnMessageNewsletter p').removeClass('error');
			}
			
			jQuery('#returnMessageNewsletter p').addClass('ok');
		}
		
		if( message != '' ) {
			jQuery('#returnMessageNewsletter p').html(message);
		}
	}
	
	
});

