// JavaScript Document
var levib_dialog = {

 version : '0.1',
 //Variables globales utilisées dans le plugin
 settings : {	
 	'modelForm' : 'form_%s.html',
	'modelErr' : '<br />Une erreur est survenue : <br /><br /> <strong> %(texte)s </strong>',
	'modelOK_inscNewsletter' : '<br/>Vous êtes maintenant abonné à notre newsletter !',
	'modelOK_passPerdu' : '<br/>Votre mot de passe vous a été envoyé !',
	'urltraitement' : 'traiteDialog.php',
	'id_lien': ''
 },

 //Ouverture du dialog
 openDialog : function(id){
	var self = levib_dialog;
 	self.settings.id_lien = id;
 	self.dialogRetour();
 	$("#dialog").dialog("open");
 },

 //Configuration du dialog
 prepareDialog : function(){
 	$("#dialog").dialog({
		autoOpen : false,
		bgiframe: true,
		modal: true,
		resizable: false,
		width: "450px"
	});
 },

 //Configuration du bouton retour
 dialogRetour: function(){
 	var self = levib_dialog;
	var callback = eval("self.dialogOK_"+self.settings.id_lien);
	$("#dialog").dialog('option', 'buttons', { "Fermer": self.dialogFermer, "OK": callback });
	$("#dialog").load($.sprintf(self.settings.modelForm, self.settings.id_lien));
 },

 //Configuration du bouton fermer
 dialogFermer: function(){
 	$("#dialog").dialog("close");
 },
 
  
 //Configuration du bouton OK pour l'inscription à la newsletter
 dialogOK_inscNewsletter: function(){
 	var self = levib_dialog;
	var ok = true;
	ok = ok && $("#d_nom").estPresent("Veuillez indiquer votre nom !");
	ok = ok && $("#d_prenom").estPresent("Veuillez indiquer votre prénom !");
	ok = ok && $("#d_email").estPresent("Veuillez indiquer votre adresse e-mail !");
	ok = ok && $("#d_email").estValide("Votre adresse e-mail n'est pas valide !","email");
	if(!ok){ return false; }
	
	$http_req = {
				"nom": $('#d_nom').val(),
				"prenom": $('#d_prenom').val(),
				"email": $('#d_email').val(),
				"tel": $('#d_tel').val(),
				"action": self.settings.id_lien
	};
	$.post(self.settings.urltraitement, $http_req, function(oData){
		if (oData.erreur == '0') {
			$("#dialog").dialog('option', 'buttons', { "Fermer": self.dialogFermer });
			var modelOK = eval("self.settings.modelOK_"+self.settings.id_lien);
			$("#dialog").html(modelOK);
		}else{
			$("#dialog").dialog('option', 'buttons', { "Fermer": self.dialogFermer, "Réessayer": self.dialogRetour });
			$("#dialog").html($.vsprintf(self.settings.modelErr, [oData]));
		}
	},"json");
 },
 


 //Configuration du bouton OK pour le récupération du mot de passe
 dialogOK_passPerdu: function(){
 	var self = levib_dialog;
	var ok = true;
	ok = ok && $("#d_email").estPresent("Veuillez indiquer votre adresse e-mail !");
	ok = ok && $("#d_email").estValide("Votre adresse e-mail n'est pas valide !","email");
	if(!ok){ return false; }
	
	$http_req = {
				"email": $('#d_email').val(),
				"action": self.settings.id_lien
	};
	$.post(self.settings.urltraitement, $http_req, function(oData){
		if (oData.erreur == '0') {
			$("#dialog").dialog('option', 'buttons', { "Fermer": self.dialogFermer });
			var modelOK = eval("self.settings.modelOK_"+self.settings.id_lien);
			$("#dialog").html(modelOK);
		}else{
			$("#dialog").dialog('option', 'buttons', { "Fermer": self.dialogFermer, "Réessayer": self.dialogRetour });
			$("#dialog").html($.vsprintf(self.settings.modelErr, [oData]));
		}
	},"json");
 }
 
}


//Détection du clic sur les liens 
$(document).ready(function(){
	levib_dialog.prepareDialog();		
});

//Function d'appel pour ouvrir la fenêtre
function Inscription_Newsletter(){
	$("#dialog").dialog('option', 'title', 'Inscription newsletter');
	levib_dialog.openDialog("inscNewsletter");   
}