/* CONFIGURATION */
var min_articles = 1;
var max_articles = 10;

$(document).ready(function() {
	SetArticleCount();
	$("form#add_adresse").hide();
	$("a.libelle").tooltip({
		extraClass: "tooltip-libelle",
	    track: true,
	    delay: 0,
	    showURL: false,
	    showBody: "::"
	});
});	

/*AFFICHER LA LISTE DES BOUTIQUES */
$("select.type_livraison").live("change",function() {
	if($(this).val()==2) {
		$(".liste_boutiques").show();
	} else {
		$(".btn").attr("href","javascript:void(0);");
		$("div.align").fadeTo(0,"0.5");
		$.ajax({
			type: "POST",
			url: "modules/ecom/ajax_panier.php",
			data: "Action=SetTypeLivraison&Type_Livraison=1",
			success: function(result) {
				if(result==1) { 
					$(".liste_boutiques").hide();
					document.location.reload();
				}
			}
		});
	}
});

/* SELECTIONNER UNE BOUTIQUE POUR RETIRER */
$("select.boutiques").live("change",function() {
	if($(this).val()>0) {
		$(".btn").attr("href","javascript:void(0);");
		$("div.align").fadeTo(0,"0.5");
		$.ajax({
			type: "POST",
			url: "modules/ecom/ajax_panier.php",
			data: "Action=SetTypeLivraison&Type_Livraison=2&Boutique="+$(this).val(),
			success: function(result) {
				if(result==1) { document.location.reload(); }
			}
		});
	}
});

/* CHANGE LE TARIF ET RECUPERE L'OPTION 1 EN COURS */
$("select.option1").live("change",function() {
	var id = $(this).val();
	var tr = $(this).parents("tr.panier-article");
	var panier_record = tr.find("input[name=article]").val();
	//Désactivation du bouton commander
	$(".btn").attr("href","javascript:void(0);");
	$("div.align").fadeTo(0,"0.5");
	$.ajax({
		type: "POST",
		url: "modules/ecom/ajax_panier.php",
		data: "Action=ModifyRecord&PanierRecord="+panier_record+"&Option=1&Id="+id,
		success: function(result) {
			if(result==1) document.location.reload();
		}
	});
});

/* CHANGE LE TARIF ET RECUPERE L'OPTION 2 EN COURS */
$("select.option2").live("change",function() {
	var id = $(this).val();
	var tr = $(this).parents("tr.panier-article");
	var panier_record = tr.find("input[name=article]").val();
	$(".btn").attr("href","javascript:void(0);");
	$("div.align").fadeTo(0,"0.5");
	$.ajax({
		type: "POST",
		url: "modules/ecom/ajax_panier.php",
		data: "Action=ModifyRecord&PanierRecord="+panier_record+"&Option=2&Id="+id,
		success: function(result) {
			if(result==1) document.location.reload();
		}
	});
});

/* AJOUTER UN ARTICLE AU PANIER */
$("a.action-ecom-add").live("click",function() {
	var objart = $(this).parents(".fiche");
	var article = objart.find("input[name=id]").val();
	var libelle = objart.find("input[name=libelle]").html();
	var qte = objart.find("input[name=Qte]").val();
	$.ajax({
		type: "POST",
		url: "modules/ecom/ajax_panier.php",
		data: "Action=Add&Article="+article+"&Qte="+qte+"&MaxArticles="+max_articles,
		success: function(result) {
			if(result==1) {				
				SetArticleCount();
				/*objart.fadeOut(500,function() {
					objart.find("input[name=Qte]").val(min_articles);
					objart.fadeIn(500);
				});*/
				DialogBox();
			}
		}
	});
});

/* SUPPRIMER UN ARTICLE DU PANIER */
$("a.action-ecom-remove").live("click",function() {
	var tr = $(this).parents("tr.panier-article");
	var article = tr.find("input[name=article]").val();
	var libelle = tr.find("input[name=libelle]").val();
	if(confirm(SwitchLang("Voulez-vous vraiment supprimer l'article « ","Do you really want delete ")+libelle+SwitchLang(" » de votre panier ?"," from your cart ?"))) {
		$.ajax({
			type: "POST",
			url: "modules/ecom/ajax_panier.php",
			data: "Action=Remove&Article="+article,
			success: function(result) {
				if(result==1) document.location.reload();
			}
		});
	}
});

/* RECALCULER LE PANIER */
$("a.action-ecom-recalculate").live("click",function() {
	var query = 0;
	$("table.panier").find("tr.panier-article").each(function() {
		var article = $(this).find("input[name=article]").val();
		var qte = $(this).find("input[name=Qte]").val();
		$(".btn").attr("href","javascript:void(0);");
		$("div.align").fadeTo(0,"0.5");
		query = $.ajax({
			type: "POST",
			async: false,
			url: "modules/ecom/ajax_panier.php",
			data: "Action=ChangeQte&Article="+article+"&Qte="+qte+"&MinArticles="+min_articles+"&MaxArticles="+max_articles
		}).responseText;
	});
	document.location.reload();
	
});

/* DECREMENTATION DE LA QUANTITE */
$("a.action-ecom-decrement-qte").live("click",function(){
	var input = $(this).parents(".article").find("input[name=Qte]");
	var qte = input.val();
	var newval = parseFloat(qte)-1;
	if(ValidateQuantite(newval)) {
		input.val(newval);
	} else {
		input.val(min_articles);
	}
});

/* INCREMENTATION DE LA QUANTITE */
$("a.action-ecom-increment-qte").live("click",function(){
	var input = $(this).parents(".article").find("input[name=Qte]");
	var qte = input.val();
	var newval = parseFloat(qte)+1;
	if(V2alidateQuantite(newval)) {
		input.val(newval);
	} else {
		input.val(min_articles);
	}
});

/* MODIFICATION MANUELLE DE LA QUANTITE */
$("input#Qte").live("blur",function() {
	var input = $(this);
	var newval = parseFloat(input.val());
	var article = $('.panier-article').find("input[name=article]").val();
	if(ValidateQuantite(newval)) {
		input.val(newval);
		$.ajax({
			type: "POST",
			url: "modules/ecom/ajax_panier.php",
			data: "Action=DuplicateArticle&Article="+article+"&Quantite="+newval,
			success: function(result) {
				if(result=1){document.location.reload();}
			}
		});
	} else {
		input.val(min_articles);
	}
});

/* VALIDATION DE LA QUANTITE D'ARTICLES DEMANDE */
function ValidateQuantite(newval) {
	if((newval<=max_articles)&&(newval>min_articles)) {
		return true;
	} else {
		return false;
	}
}

/* COMPTE LE NOMBRE D'ARTICLES DANS LE PANIER */
function SetArticleCount() {
	$.ajax({
		type: "POST",
		url: "modules/ecom/ajax_panier.php",
		data: "Action=Count",
		success: function(count) {
			$("#nb-articles").text(count);
		}
	});
}

$("a.action-ecom-order").live("click",function() {
	
	//vérification des options
	var verified = true;
	var article;
	var liste_article_opt2="";
	if($("select[name=option_2]").length>0) {
		$("select[name=option_2]").each(function() {
			if($(this).val()==0) {
				$(this).blink();
				article = $(this).parents("tr").children("td.libelle").text()+" ";
				liste_article_opt2 = article+"\n"+liste_article_opt2;
				verified = false;		
			}
		});
	}

	//vérification des peausseries
	var liste_article_opt1="";
	if($("select[name=option_1]").length>0) {
		$("select[name=option_1]").each(function() {
			if($(this).val()==0) {
				$(this).blink();
				article = $(this).parents("tr").children("td.libelle").text()+" ";
				liste_article_opt1 = article+"\n"+liste_article_opt1;
				verified = false;	
			}
		});
	}
	
	//vérification des choix de livraisons
	var error_livraison = 0;
	if ($("select[name=type_livraison]").val()==2){
		//si aucune sélection
		if ($("select[name=magasin]").val()==0){
			$("select[name=magasin]").blink();
			error_livraison=1;
			verified = false;	
		}
	}
	
	if(!verified){
		if (liste_article_opt2!=""){
			alert (SwitchLang("Veuillez préciser les options des articles suivant:\n","Please specify the options of the following articles:\n")+liste_article_opt2);
		}
		if (liste_article_opt1!=""){
			alert (SwitchLang("Veuillez préciser les peausseries des articles suivant:\n","Please specify the leather of the following articles:\n")+liste_article_opt1);
		}
		if (error_livraison==1){
			alert(SwitchLang("Veuillez sélectionner une boutique pour le retrait de votre commande.","Please select a store for take back of your order"));
		}
		return false;
	}
	
});
	

/* AJOUT D'UNE ADRESSE -> OUVERTURE DU FORMULAIRE */
$("a.action-ecom-form-add-adresse").live("click",function() {
	$("form#add_adresse").slideDown();
	$("form#confirm_commande").slideUp();
	
});

/* AJOUT D'UNE ADRESSE -> FERMETURE DU FORMULAIRE */
$("a.action-ecom-cancel-adresse").live("click",function() {
	$("form#add_adresse").slideUp();
	$("form#confirm_commande").slideDown();
	
});

/* AJOUT D'UNE ADRESSE -> ENREGISTREMENT */
$("a.action-ecom-save-adresse").live("click",function() {
	var form = $('form#add_adresse');
	var reponse = $.ajax({
		type: "POST",
		url: "modules/compte/ajax_compte.php",
		data: form.serialize()+"&Action=AddAdresse",
		async: false
	}).responseText;
	if(reponse!=1) return false; 
});

/* SELECTION D'UNE ADRESSE */
$("select#Liste_Adresses").live("change",function() {
	SetAdresse($(this).parents("form"),$(this).val());
});

function SetAdresse(form,selectedadresse) {
	$.ajax({
		type: "POST",
		url: "modules/compte/ajax_compte.php",
		data: "Action=SelectAdresse&SelectedAdresse="+selectedadresse,
		success: function(result) {
			var etab = result.split("::");
			form.find("input[name=Destinataire]").val(etab[0]);
			form.find("input[name=Adresse_1]").val(etab[1]);
			form.find("input[name=Adresse_2]").val(etab[2]);
			form.find("input[name=Code_Postal]").val(etab[3]);
			form.find("input[name=Ville]").val(etab[4]);
			form.find("select[name=Pays]").val(etab[5]);
			RefreshInfosTarif();
		}
	});
}

/* REFRESH DES INFOS DE TARIF*/
function RefreshInfosTarif(){
	var codPays = $("#Pays").val();
	var oldFDP = $("#FDP").val();
	var idPanier = $("#idPanier").val();
	$.ajax({
		type: "POST",
		url: "modules/ecom/ajax_commande.php",
		data: "Action=RefreshInfosTarif&idPanier="+idPanier+"&oldFDP="+oldFDP+"&codPays="+codPays,
		success : function(res){
			result = res.split("::");
			if (result[0]!="null"){
				$("#FDP").val(result[1]);
				
				$("p.total_fdp_ht").find("span").html(result[2]);
				$("p.total_fdp_ttc").find("span").html(result[3]);
				$("p.total_ht").find("span").html(result[4]);
				$("p.total_ttc").find("span").html(result[5]);
				$("div.commande-infos").blink();
				
				if(result[0]==1){//Client CEE
					$(".cee").show();
					$(".noncee").hide();
				}else{ //Client Hors CEE
					$(".cee").hide();
					$(".noncee").show();
				}
				
			}
		}
	});
}

/* CONFIRMATION DE LA COMMANDE */
$("a.action-ecom-confirm").live("click",function() {
	var form = $(this).parents("form");
	var type_livraison = form.find("input[name=Type_Livraison]").val();
	var commentaires = form.find("textarea[name=Commentaires]").val();
	switch(type_livraison) {
		case "1":
			var select = form.find("select[name=Liste_Adresses]");
			var dest = form.find("input[name=Destinataire]").val();
			var adr1 = form.find("input[name=Adresse_1]").val();
			var adr2 = form.find("input[name=Adresse_2]").val();
			var cp = form.find("input[name=Code_Postal]").val();
			var ville = form.find("input[name=Ville]").val();
			var pays = form.find("select[name=Pays]").val();
			var reponse = $.ajax({
				type: "POST",
				url: "modules/ecom/ajax_panier.php",
				data: "Action=Confirm&Destinataire="+dest+"&Adresse_1="+adr1+"&Adresse_2="+adr2+"&Code_Postal="+cp+"&Ville="+ville+"&Pays="+pays+"&Commentaires="+commentaires+"&Type_Livraison="+type_livraison,
				async: false
			}).responseText;
			break;
		case "2":
			var boutique = form.find("input[name=Boutique]").val();
			var reponse = $.ajax({
				type: "POST",
				url: "modules/ecom/ajax_panier.php",
				data: "Action=Confirm&Commentaires="+commentaires+"&Type_Livraison="+type_livraison+"&Boutique="+boutique,
				async: false
			}).responseText;
			break;
	}
	if(reponse!=1) return false;
});

/* ANULATION DE LA COMMANDE */
$("a.action-ecom-cancel").live("click",function() {
	var reponse = $.ajax({
		type: "POST",
		url: "modules/ecom/ajax_panier.php",
		data: "Action=Cancel",
		async: false
	}).responseText;
	if(reponse!=1) return false;
});

/* RETOUR */
$("a.action-ecom-retour").live("click",function() {
	history.go(-1);
	return false;
});

/* FILTRE LES ARTICLES BY FAMILLE */
$("a.action-ecom-filter").live("click",function() {
	var famille = $(this).siblings("select.famille").val();
	$(this).attr("href","articles-"+famille+".html");
	return true;
});
