

$(document).ready(function(){  
	
	$("#panier .lien").css('display','none');
	$("#panier .bouton").css('display','none');
	
	$.ajax({
	   type: "POST",
	   url: "php/majPanier.php",
	   data: "",
	   success: function(datas){
			affichePanier(datas);
	   },
	   dataType: "json"
	 }); 
	 
	
	
});



function ajouteArticle(pId) {
	$.ajax({
	   type: "POST",
	   url: "php/majPanier.php",
	   data: "id="+pId+"&mode=add",
	   success: function(datas){
			addItemPanier(datas);
	   },
	   dataType: "json"
	 }); 
		
}

function retireArticle(pId,pNombre) {
	
	if (pNombre < 2) {
		$("#popinArticle_"+pId).remove();
		$("#article_"+pId).remove();
		supprimeArticle(pId);
		return;
	}
	$.ajax({
	   type: "POST",
	   url: "php/majPanier.php",
	   data: "id="+pId+"&mode=remove",
	   success: function(datas){
			addItemPanier(datas);
	   },
	   dataType: "json"
	 }); 
		
}

function supprimeArticle(pId) {
	
	pId = -pId;
	
	$.ajax({
	   type: "POST",
	   url: "php/majPanier.php",
	   data: "id="+pId+"&mode=delete",
	   success: function(datas){
			removeItemPanier(datas);
	   },
	   dataType: "json"
	 }); 
	
}

function addItemPanier(datas) {
	
	// On prend le dernier item de la liste et on le rajoute
	
	var lastItem = datas[(datas.length-1)]['article'];
	var nombreItem = datas[(datas.length-1)]['nombre'];
	
	var isExist = false;
	$("#panier .listeArticles .item").each(function() {
		if ($(this).attr('id') == "article_"+lastItem['id']) {
			isExist = true;
			$(this).remove();
		}
	});
	
	var newItem = $('<div class="item" id="article_'+lastItem['id']+'"><div style="width:20px;height:20px;float:right;cursor:pointer" class="btSupp"><img src="images/btPanierSupp.png" /></div><div style="width:170px;padding-right:10px"><span class="nombre">'+nombreItem+' x</span> '+lastItem['titre']+'<span class="reference"> ('+lastItem['reference']+')</span></div></div>"').hide();
	$("#panier .listeArticles").prepend(newItem);
	newItem.show('fast');
	
	gestionBtSupp();
	
	$("#popinArticle_"+lastItem['id']+" .qte").empty();
	$("#popinArticle_"+lastItem['id']+" .qte").append("<a onClick='retireArticle(\""+lastItem['id']+"\",\""+nombreItem+"\");'><img src='images/btMoins.png' style='width:12px;height:12px;cursor:pointer;margin-right:10px;position:relative;top:2px;' class='btMoins'/></a>"+nombreItem+"<a onClick='ajouteArticle(\""+lastItem['id']+"\");'><img src='images/btPlus.png' style='width:12px;height:12px;cursor:pointer;margin-left:10px;position:relative;top:2px;' class='btPlus'/></a>");
	
	
	
	var current = 0;
	$("#panier .listeArticles .item").each(function() {
		current++;
		if (current>3) $(this).fadeOut();
	});
	
	$("#panier .lien").hide();
	$("#panier .bouton").hide();
	if (datas.length>3) $("#panier .lien").show();
	if (datas.length>0) $("#panier .bouton").show();
	
	
	$("#sousTitreBoxPanier").empty();
	$("#sousTitreBoxPanier").append(getSousTitre(datas));
	
}

function removeItemPanier(datas) {
	var nombreItemAffiche = 0;
	$("#panier .item").each(function() {
		if ($(this).css('display') == "block") nombreItemAffiche++;
		else {
			if (nombreItemAffiche<3) {
				$(this).show('fast');
				nombreItemAffiche++;
			}
		}
	});
	
	$(".popinPanier .itemPanier tr").each(function() {
		if ($(this).hasClass("odd")) $(this).removeClass("odd");
		if ($(this).hasClass("even")) $(this).removeClass("even");
	});
	var maClass = "even";
	$(".popinPanier .itemPanier tr").each(function() {
		$(this).addClass(maClass);
		if (maClass == "odd") maClass="even";
		else maClass = "odd";
	});
	$(".popinPanier .itemPanier tr:first").removeClass("even");
	
	$("#panier .lien").hide();
	$("#panier .bouton").hide();
	
	if (datas.length>3) $("#panier .lien").show();
	if (datas.length>0) $("#panier .bouton").show();
	
	
	$("#sousTitreBoxPanier").empty();
	$("#sousTitreBoxPanier").append(getSousTitre(datas));
	
}

function affichePanier(datas) {
	
	for (var i=0;i<datas.length;i++) {
		var monItem = datas[i]['article'];
		var nombreItem = datas[i]['nombre'];
		var newItem = $('<div class="item" id="article_'+monItem['id']+'"><div style="width:20px;height:20px;float:right;cursor:pointer" class="btSupp"><img src="images/btPanierSupp.png" /></div><div style="width:170px;padding-right:10px"><span class="nombre">'+nombreItem+' x</span> '+monItem['titre']+'<span class="reference"> ('+monItem['reference']+')</span></div></div>"');
		if (i<datas.length-3) newItem.hide();
		$("#panier .listeArticles").prepend(newItem);
	}
	
	gestionBtSupp();
	
	
	
	if (datas.length>3) $("#panier .lien").css('display','block');
	if (datas.length>0) $("#panier .bouton").css('display','block');
	
	$("#sousTitreBoxPanier").empty();
	$("#sousTitreBoxPanier").append(getSousTitre(datas));
}

function getSousTitre(datas) {
	
	var pNombre=0;
	for (var i=0;i<datas.length;i++) {
		pNombre += datas[i]['nombre'];
	}
	
	var sousTitre = panier_aucunArticle;//"Aucun article";
	if (pNombre==1) sousTitre = "1 "+panier_oneArticle;//"1 article";
	else if (pNombre>1) sousTitre = pNombre+" "+panier_moreOneArticle;
	
	/*else if (pNombre==2) sousTitre = "2 articles";
	else if (pNombre==3) sousTitre = "3 articles";
	else if (pNombre>3) sousTitre = "Derniers articles ajoutés";*/
	return sousTitre;
}

function gestionBtSupp() {
	$("#panier .item .btSupp").hide();
	$("#panier .item .btSupp").click(function() {
		var id = Number(($(this).parent().attr('id').split("_"))[1]);
		supprimeArticle(id);
		$(this).parent().remove();
	});
	
	$("#panier .item").hover(
		function() {
			$(this).children(".btSupp").fadeIn('fast');
		},
		function() {
			$(this).children(".btSupp").fadeOut('fast');
		}
	);
}

function validationMail(pMail) {
	/*var email 	= pMail;
	var verif 	= /^[a-zA-Z0-9_-\.]+@[a-zA-Z0-9-]{2,}[.][a-zA-Z]{2,3}$/
	if (verif.exec(email) == null) {
		alert("Votre adresse email semble incorrecte");
		return false;
	} else {
		return true;
	}	*/

	var new_string = new String(pMail);
	if (!new_string.match('^[-_\.0-9a-zA-Z]{1,}@[-_\.0-9a-zA-Z]{1,}[\.][0-9a-zA-Z]{2,}$')) {
		alert(popinDevis_createAccount_errorMail1);
		return false;
	} else {
			return true;
	}
}

function creationCompte() {
	
	// verification du mail, du password, du nom et du telephone
	
	if (document.formAccount.email.value == "") {
		alert(popinDevis_createAccount_errorMail2);
			document.formAccount.email.focus();
			return;
	} else if (!validationMail(document.formAccount.email.value)) {
		document.formAccount.email.focus();
		return;
	};
	
	
	if (document.formAccount.password.value == "") {
		alert(popinDevis_createAccount_errorPass);
		document.formAccount.password.focus();
		return;
	}
	
	if (document.formAccount.nom.value == "") {
		alert(popinDevis_createAccount_errorName);
		document.formAccount.nom.focus();
		return;
	}
	
	if (document.formAccount.prenom.value == "") {
		alert(popinDevis_createAccount_errorFirstName);
		document.formAccount.prenom.focus();
		return;
	}
	
	if (document.formAccount.telephone.value == "") {
		alert(popinDevis_createAccount_errorPhone);
		document.formAccount.telephone.focus();
		return;
	}
	
	var dataPost = "";
	dataPost += "email="+document.formAccount.email.value;
	dataPost += "&password="+document.formAccount.password.value;
	
	for (var i=0; i<document.formAccount.civilite.length;i++) {
		 if (document.formAccount.civilite[i].checked) {
		   dataPost += "&civilite="+document.formAccount.civilite[i].value;
		 }
	}
	
	dataPost += "&nom="+document.formAccount.nom.value;
	dataPost += "&prenom="+document.formAccount.prenom.value;
	dataPost += "&societe="+document.formAccount.societe.value;
	dataPost += "&telephone="+document.formAccount.telephone.value;
	dataPost += "&fax="+document.formAccount.fax.value;
	dataPost += "&mobile="+document.formAccount.mobile.value;
	dataPost += "&adresse="+document.formAccount.adresse.value;
	dataPost += "&complement="+document.formAccount.complement.value;
	dataPost += "&cp="+document.formAccount.cp.value;
	dataPost += "&ville="+document.formAccount.ville.value;
	dataPost += "&pays="+document.formAccount.pays.value;
	if (document.formAccount.newsLetter.checked) dataPost += "&newsLetter=1";
	else dataPost += "&newsLetter=0";
	if (document.formAccount.commercial.checked) dataPost += "&commercial=1";
	else dataPost += "&commercial=0";
	
	$.ajax({
	   type: "POST",
	   url: "php/createAccount.php",
	   data: dataPost,
	   success: function(datas){
			successCreateAccount(datas);
	   },
	   dataType: "json"
	 }); 
	}
	
function successCreateAccount(datas) {
	if (isset(datas['error'])) alert(datas['error']);
	else {
		var $messageBienvenue = popinDevis_hello+" "+datas['prenom']+" "+datas['nom']+", "+popinDevis_createAccount_successCreate+"<br /><br />"
		$("#connexionBoxDevis").empty();
		$("#connexionBoxDevis").append($messageBienvenue);
		$("#demandeDevis").css('display','block');
		popinHeight = $('.prettyPopin .prettyContent .prettyContent-container').height() + parseFloat($('.prettyPopin .prettyContent .prettyContent-container').css('padding-top')) + parseFloat($('.prettyPopin .prettyContent .prettyContent-container').css('padding-bottom'));
			var popinHeight = $('.prettyPopin .prettyContent .prettyContent-container').height() + parseFloat($('.prettyPopin .prettyContent .prettyContent-container').css('padding-top')) + parseFloat($('.prettyPopin .prettyContent .prettyContent-container').css('padding-bottom'));
		var hauteurFenetre = $(window).height()/2;
		var scrollPos = getScroll();
		var projectedTop = hauteurFenetre + scrollPos['scrollTop'] - (popinHeight/2);
		if(projectedTop < 0) projectedTop = 10;
		$('.prettyPopin').animate({
			'top': projectedTop,
			'height' : popinHeight
		}, 300);
		addMenuNav();
	}
	
}

function connexionCompte() {
	var dataPost = "";
	dataPost += "email="+document.loginFormPopin.loginPopin.value;
	dataPost += "&password="+document.loginFormPopin.passwordPopin.value;
	
	$.ajax({
	   type: "POST",
	   url: "php/connectAccount.php",
	   data: dataPost,
	   success: function(datas){
			successConnectAccount(datas);
	   },
	   dataType: "json"
	 }); 
}


function connexionCompteFromBox() {
	var dataPost = "";
	dataPost += "email="+document.loginForm.login.value;
	dataPost += "&password="+document.loginForm.password.value;
	
	$.ajax({
	   type: "POST",
	   url: "php/connectAccount.php",
	   data: dataPost,
	   success: function(datas){
			successConnectAccountFromBox(datas);
	   },
	   dataType: "json"
	 }); 
}

function successConnectAccount(datas) {
	if (isset(datas['error'])) alert(datas['error']);
	else {
		var $messageBienvenue = popinDevis_hello+" "+datas['prenom']+" "+datas['nom']+", "+popinDevis_createAccount_successConnect+"<br /><br />"
		$("#connexionBoxDevis").empty();
		$("#connexionBoxDevis").append($messageBienvenue);
		$("#demandeDevis").css('display','block');
		popinHeight = $('.prettyPopin .prettyContent .prettyContent-container').height() + parseFloat($('.prettyPopin .prettyContent .prettyContent-container').css('padding-top')) + parseFloat($('.prettyPopin .prettyContent .prettyContent-container').css('padding-bottom'));
			var popinHeight = $('.prettyPopin .prettyContent .prettyContent-container').height() + parseFloat($('.prettyPopin .prettyContent .prettyContent-container').css('padding-top')) + parseFloat($('.prettyPopin .prettyContent .prettyContent-container').css('padding-bottom'));
		var hauteurFenetre = $(window).height()/2;
		var scrollPos = getScroll();
		var projectedTop = hauteurFenetre + scrollPos['scrollTop'] - (popinHeight/2);
		if(projectedTop < 0) projectedTop = 10;
		$('.prettyPopin').animate({
			'top': projectedTop,
			'height' : popinHeight
		}, 300);
		addMenuNav();
	}
	
}

function successConnectAccountFromBox(datas) {
	if (isset(datas['error'])) alert(datas['error']);
	else {
		var $messageBienvenue = "<div class='titre'>"+popinDevis_myAccount+"</div>"+popinDevis_hello+" "+datas['prenom']+" "+datas['nom']+". "+popinDevis_createAccount_successConnectBox;
		$("#login .content").empty();
		$("#login .content").append($messageBienvenue);
		addMenuNav(datas['client']);
	}
	
}

function addMenuNav(isClient) {
	var $monMenu = '<li class="main last">'+nav_menu4+'<ul class="subnav" style="width:250px">';
	$monMenu += '<li><a id="linkMonCompte" href="monCompte.php" rel="prettyPopin">'+nav_menu4_sousmenu1+'</a></li>';
	if (isClient==1) {
		$monMenu += '<li><a href="services.php">'+nav_menu4_sousmenu2+'</a></li>'
		$monMenu += '<li><a href="annonces.php">'+nav_menu4_sousmenu3+'</a></li>'
		$monMenu += '<li><a href="bonsPlans.php">'+nav_menu4_sousmenu4+'</a></li>'
	}
	$monMenu += '<li><a href="deconnexion.php">'+nav_menu4_sousmenu5+'</a></li></ul></li>';
	
	$("#nav ul").append($monMenu);
	$("#nav ul.subnav").hide();
	$("a[rel^='prettyPopin']").prettyPopin({width: 680});
	
	var largeur = Math.round((1000- $("#nav ul").width())/2);
	$("#nav .spacer").width(largeur);
	interactiveNav();
}


function isset (variable) {
  return (typeof variable != 'undefined');
}


function remplissageAuto(pType) {
	
	if (pType == "livraison") {
	
		$.ajax({
		   type: "POST",
		   url: "php/infosClient.php",
		   data: "",
		   success: function(datas){
				doRemplissageLivraison(datas);
		   },
		   dataType: "json"
		 });
		 
	} else if (pType == "facturation") {
	
		$.ajax({
		   type: "POST",
		   url: "php/infosClient.php",
		   data: "",
		   success: function(datas){
				doRemplissageFacturation(datas);
		   },
		   dataType: "json"
		 });
		 
	}
	
	
}

function doRemplissageLivraison(datas) {
	if (isset(datas['error'])) alert(datas['error']);
	else {
		document.formOrder.livraisonNom.value = datas['nom']+" "+datas['prenom'];
		document.formOrder.livraisonTelephone.value = datas['telephone'];
		document.formOrder.livraisonAdresse.value = datas['adresse1'];
		document.formOrder.livraisonComplement.value = datas['adresse2'];
		document.formOrder.livraisonCp.value = datas['cp'];
		document.formOrder.livraisonVille.value = datas['ville'];
		document.formOrder.livraisonPays.value = datas['pays'];
	}
}

function doRemplissageFacturation(datas) {
	if (isset(datas['error'])) alert(datas['error']);
	else {
		document.formOrder.facturationNom.value = datas['nom']+" "+datas['prenom'];
		document.formOrder.facturationTelephone.value = datas['telephone'];
		document.formOrder.facturationAdresse.value = datas['adresse1'];
		document.formOrder.facturationComplement.value = datas['adresse2'];
		document.formOrder.facturationCp.value = datas['cp'];
		document.formOrder.facturationVille.value = datas['ville'];
		document.formOrder.facturationPays.value = datas['pays'];
	}
}

function swapConnexionPopin() {
	if ($("#popinConnexion").css('display') == "block") {
		$("#popinConnexion").css('display','none');
		$("#popinCreationCompte").css('display','block');
	} else {
		$("#popinConnexion").css('display','block');
		$("#popinCreationCompte").css('display','none');
	}
	var popinHeight = $('.prettyPopin .prettyContent .prettyContent-container').height() + parseFloat($('.prettyPopin .prettyContent .prettyContent-container').css('padding-top')) + parseFloat($('.prettyPopin .prettyContent .prettyContent-container').css('padding-bottom'));
	var hauteurFenetre = $(window).height()/2;
	var scrollPos = getScroll();
	var projectedTop = hauteurFenetre + scrollPos['scrollTop'] - (popinHeight/2);
	if(projectedTop < 0) projectedTop = 10;
	$('.prettyPopin').animate({
		'top': projectedTop,
		'height' : popinHeight
	}, 300);
}

function getScroll(){
	scrollTop = window.pageYOffset || document.documentElement.scrollTop || 0;
	scrollLeft = window.pageXOffset || document.documentElement.scrollLeft || 0;
	return {scrollTop:scrollTop,scrollLeft:scrollLeft};
};

function envoiDemande() {
	
	if (document.formOrder.dureeLocation.value == "") {
		alert(popinDevis_createAccount_errorTime);
		document.formOrder.dureeLocation.focus();
		return;
	}
	
	if (document.formOrder.typeLogement.value == "") {
		alert(popinDevis_createAccount_errorType);
		document.formOrder.typeLogement.focus();
		return;
	}
	
	if (document.formOrder.livraisonNom.value == "") {
		alert(popinDevis_createAccount_errorDeliveryName);
		document.formOrder.livraisonNom.focus();
		return;
	}
	
	if (document.formOrder.livraisonAdresse.value == "") {
		alert(popinDevis_createAccount_errorDeliveryAdress);
		document.formOrder.livraisonAdresse.focus();
		return;
	}
	
	if (document.formOrder.livraisonCp.value == "") {
		alert(popinDevis_createAccount_errorDeliveryCP);
		document.formOrder.livraisonCp.focus();
		return;
	}
	
	if (document.formOrder.livraisonVille.value == "") {
		alert(popinDevis_createAccount_errorDeliveryCity);
		document.formOrder.livraisonVille.focus();
		return;
	}
	
	if (document.formOrder.livraisonPays.value == "") {
		alert(popinDevis_createAccount_errorDeliveryCountry);
		document.formOrder.livraisonPays.focus();
		return;
	}
	
	var dataPost = "";
	dataPost += "dureeLocation="+document.formOrder.dureeLocation.value;
	dataPost += "&typeLogement="+document.formOrder.typeLogement.value;
	dataPost += "&commentaires="+document.formOrder.commentaires.value;
	dataPost += "&livraisonNom="+document.formOrder.livraisonNom.value;
	dataPost += "&livraisonTelephone="+document.formOrder.livraisonTelephone.value;
	dataPost += "&livraisonAdresse="+document.formOrder.livraisonAdresse.value;
	dataPost += "&livraisonComplement="+document.formOrder.livraisonComplement.value;
	dataPost += "&livraisonCp="+document.formOrder.livraisonCp.value;
	dataPost += "&livraisonVille="+document.formOrder.livraisonVille.value;
	dataPost += "&livraisonPays="+document.formOrder.livraisonPays.value;
	dataPost += "&facturationNom="+document.formOrder.facturationNom.value;
	dataPost += "&facturationTelephone="+document.formOrder.facturationTelephone.value;
	dataPost += "&facturationAdresse="+document.formOrder.facturationAdresse.value;
	dataPost += "&facturationComplement="+document.formOrder.facturationComplement.value;
	dataPost += "&facturationCp="+document.formOrder.facturationCp.value;
	dataPost += "&facturationVille="+document.formOrder.facturationVille.value;
	dataPost += "&facturationPays="+document.formOrder.facturationPays.value;
	
	$.ajax({
	   type: "POST",
	   url: "php/envoiDemande.php",
	   data: dataPost,
	   success: function(datas){
			succesEnvoi(datas);
	   },
	   dataType: "json"
	 });
}

function succesEnvoi(datas) {
	$("#connexionBoxDevis").empty();
	$("#demandeDevis").empty();
	$("#reponseEnvoi").append(popinDevis_createAccount_successSend);
	var popinHeight = $('.prettyPopin .prettyContent .prettyContent-container').height() + parseFloat($('.prettyPopin .prettyContent .prettyContent-container').css('padding-top')) + parseFloat($('.prettyPopin .prettyContent .prettyContent-container').css('padding-bottom'));
	var hauteurFenetre = $(window).height()/2;
	var scrollPos = getScroll();
	var projectedTop = hauteurFenetre + scrollPos['scrollTop'] - (popinHeight/2);
	if(projectedTop < 0) projectedTop = 10;
	$('.prettyPopin').animate({
		'top': projectedTop,
		'height' : popinHeight
	}, 300);
	
	$("#panier .item").each(function() {
		$(this).remove();
	});
	
	$("#panier .lien").hide();
	$("#panier .bouton").hide();
	
	$("#sousTitreBoxPanier").empty();
	$("#sousTitreBoxPanier").append(panier_aucunArticle);
}

function envoiMotDePasse() {
	
	if (document.passwordFormPopin.loginPopin.value == "" || document.passwordFormPopin.loginPopin.value == loginBox_email) {
		alert(popinDevis_createAccount_errorMail2);
		document.passwordFormPopin.loginPopin.focus();
		return;
	}
	
	var dataPost = "";
	dataPost += "email="+document.passwordFormPopin.loginPopin.value;
	
	
	$.ajax({
	   type: "POST",
	   url: "php/motDePasse.php",
	   data: dataPost,
	   success: function(datas){
			succesEnvoiMotDePasse(datas);
	   },
	   dataType: "json"
	 });
}

function succesEnvoiMotDePasse(datas) {
	if (isset(datas['error'])) alert(datas['error']);
	else {
		var $message = datas['success'];
		$("#formMotDePasse").empty();
		$("#reponseMotDePasse").append($message);
		
	}	
}



				
