// Vitesses
var speedShowMsgForContactForm = 1000;
var speedHideMsgForContactForm = 500;

// Effet
var effectShowMsgForContactForm = "easeOutBounce";
var effectHideMsgForContactForm = "easeInExpo";

// Temps
var timeBeforeHideDivMsgForContactForm = 2000;

// Cette fonction envoi une requête en AJAX au script d'envoi de mail
function sendContact(name, mail, sujet, message)
{
	$.post("ws/send_contact.php", {name: name, mail: mail, sujet: sujet, message: message}, function(data){
	
		if(data > 0)
			showSuccess("Message envoyé !");
		else
			switch(data)
			{
				case "-1":
					showError("Et le nom ?");
				break;
				
				case "-2":
					showError("Comment va-t-on répondre sans mail ?");
				break;
				
				case "-3":
					showError("C'est à quel sujet ?");
				break;
				
				case "-4":
					showError("Rien à nous dire ?");
				break;
				
				case "-5":
					showError("On risque pas de répondre avec ce mail...");
				break;
								
				case "-100":
					showError("Erreur interne");
				break;
			}
	});
}

function showSuccess(msg)
{
	$("#divMsgForContactForm").addClass("success");
	
	$("#divMsgForContactForm P").html(msg);

	showDivMsgForContactForm();
}

function showError(msg)
{
	$("#divMsgForContactForm").addClass("error");

	$("#divMsgForContactForm P").html(msg);

	showDivMsgForContactForm();
}

function showDivMsgForContactForm()
{
	// On centre le paragraphe
	milieuMsg = $("#divMsgForContactForm").outerHeight()/2-$("#divMsgForContactForm P").outerHeight()/2;
	$("#divMsgForContactForm P").css({
		top:milieuMsg
	})
	
	// Position de départ
	startPosTop = $('body').scrollTop() - $("#divMsgForContactForm").outerHeight();
	startPosLeft = $('body').scrollLeft() + $(window).width()/2 - $("#divMsgForContactForm").outerWidth()/2;
	
	$("#divMsgForContactForm").css({
		top:startPosTop,
		left:startPosLeft
	});

	// Position visible
	visiblePosTop = $('body').scrollTop() + $(window).height()/2 - $("#divMsgForContactForm").outerHeight()/2;
	visiblePosLeft = startPosLeft;

	$("#divMsgForContactForm").animate({
		top:visiblePosTop,
		left:visiblePosLeft
	}, speedShowMsgForContactForm, effectShowMsgForContactForm, function(){
		setTimeout("hideDivMsgForContactForm()", timeBeforeHideDivMsgForContactForm)
	});
}

function hideDivMsgForContactForm()
{
	// Position caché
	hiddenPosTop = $('body').scrollTop() + $(window).height();

	$("#divMsgForContactForm").animate({
		top:hiddenPosTop
	}, speedHideMsgForContactForm, effectHideMsgForContactForm, function(){
		$("#divMsgForContactForm").removeClass("error");
		$("#divMsgForContactForm").removeClass("success");		
	});
}

$(document).ready(function(){
	
	$("#formContact").submit(function(event){

		// On recupère les valeures de champs
		nom = $("input[name='name']").val();
		email = $("input[name='mail']").val();
		sujet = $("input[name='sujet']").val();
		message = $("textarea[name='message']").val();
		
		sendContact(nom, email, sujet, message);
		
		return false;
	});
});