// Raccourci fonctions ajax
function prixa(qte, libelle, lib_devise, lib_ht, lib_ttc, prixMinHT, prixMinTTC, prixMinBarreHT){
	Sku.prix.add(qte, libelle, lib_devise, lib_ht, lib_ttc, prixMinHT, prixMinTTC, prixMinBarreHT);
}
function prixm(id_biz){Sku.prix.maj(id_biz);}
function prixc(prix, prixBarre){Sku.prix.calc(prix, prixBarre);}

function miniaa(classe, path, key){Sku.minia.add(classe, path, key);}
function miniam(imgDefault){Sku.minia.maj(imgDefault);}


//Mise a jour du Sku
var Sku = {
	ajaxurl: PATHRACINE + "/AjaxSku",
	zone: null,
	
	// definit les action lors du passage au sku
	load: function(){
		this.zone = $(".partie_2>.zone_prix");
		
		$("select", this.zone).change(function(){
			Sku.open();
		});
		
		if($("select", this.zone).length == 0){
		//	Sku.open();
		}
		
		$("input", this.zone).change(function(){
			Sku.prix.calc();
		});
		
		this.minia.click();
		Cart.def(this.zone, $("#link_cart", this.zone),  $("#quantity", this.zone), "SkuID="+id_sku);
		WishList.load($(".flag_ajouter_deplier"), this.zone, "SkusID="+ id_sku);
	},
	// Charge un sku
	open: function(){
	//	if($("select", this.zone).length == 0 || $("select", this.zone).length == $("select[value != '0']", this.zone).length){
			this.prix.tabPrix = new Array();
			var param = $("select,input[type='hidden']", this.zone).serialize();
			$.getScript(this.ajaxurl + "?"+ PARAMGLOBAL +"&display=FP&" + param);
	//	}
	},
	
	// Gestion des prix
	prix: {
		data:'',
		tabPrix: new Array(),
		
		// Ajoute une borne tarifaire
		add: function(qte, libelle, lib_devise, lib_ht, lib_ttc, prixMinHT, prixMinTTC, prixMinBarreHT){
			this.tabPrix[qte] = new Array(prixMinHT, prixMinBarreHT);
			
			this.data += ''
				+ '<tr><td><img src="'+ PATHRES +'/img/00-commun/1ptrans.gif" width="13" height="29" border="0" alt=""/></td>'
				+ '<td class="prix t12 color666666">'+ libelle +'</td>'
				+ '<td><img src="'+ PATHRES +'/img/00-commun/1ptrans.gif" width="7" height="29" border="0" alt=""/></td>'
				+ '<td class="prix_ht t12 color666666">'+ prixMinHT +' '+ lib_devise +' '+ lib_ht +'</td>'
				+ '<td><img src="'+ PATHRES +'/img/00-commun/1ptrans.gif" width="13" height="29" border="0" alt=""/></td>'
				+ '<td class="prix_ttc t12 color666666">'+ prixMinTTC +' '+ lib_devise +' '+ lib_ttc +'</td></tr>'
				+ '<tr><td colspan="6" class="bg_pcarre_h"><img src="'+ PATHRES +'/img/00-commun/1ptrans.gif" width="1" height="1" border="0" alt=""/></td></tr>';
		},
		
		// Affiche les bornes tarifaire et la reference biz
		maj: function(id_biz){
			$('#priceMap').html(this.data);
			this.data = '';
			
			if(id_biz != null && id_biz != ""){
				$(".partie_2>.reference #skuBiz").html(" " + id_biz);
				$(".partie_2>.reference").css("visibility", "visible");
			}else{
				$(".partie_2>.reference").css("visibility", "hidden");
			}
		},
		
		// Calcul du prix en fonction du sku/quantité
		calc: function(prix, prixBarre){
			
			var qte = $("#quantity", this.zone).val();
			
			if(parseInt(qte) && $("select", this.zone).length == $("select[value != '0']", this.zone).length)
			{
				var prix = 0;
				for(nb in this.tabPrix){
					if(parseInt(qte) >= parseInt(nb)){prix = this.tabPrix[nb];}
				}
				
				$('#prix', Sku.zone).html(prix[0]);
				
				if(prix[1] != null && prix[1] != ""){
					$('#prixBarre', Sku.zone).html(prix[1]);
					$('.chiffre_2', Sku.zone).css("visibility", "visible");
				}else{
					$('.chiffre_2', Sku.zone).css("visibility", "hidden");
				}
				$(".prix>.txt", Sku.zone).html("Prix unitaire");
			}else{
				if(prix != null) $('#prix', Sku.zone).html(prix);
				if(prixBarre != null && prixBarre != ""){
					$('#prixBarre', Sku.zone).html(prixBarre);
					$('.chiffre_2', Sku.zone).css("visibility", "visible");
				}else{
					$('.chiffre_2', Sku.zone).css("visibility", "hidden");
				}
				$(".prix>.txt", Sku.zone).html("A partir de");
			}
		}
	},
	
	// Gestion des miniatures
	minia: {
		data:'',
		// Ajoute une vue miniataure
		add: function(classe, path, key){
			this.data += '<div class="'+ classe +'"><a href="#"><img src="'+ PATHIMAGES +'/'+ path +'" width="74" height="74" border="0" alt=""/></a></div>';
		},
		// Affiche les miniatures du sku en cours et Charge l'image default
		maj: function(imgDefault){
			$(".partie_1 > .miniature").html(this.data + '<div class="clear"></div>');
			$("#imageArticle").attr("src", PATHIMAGES +'/'+ imgDefault);
			this.click();
			this.data = '';	
		},
		// Definit le click sur une miniature
		click: function(){
			$(".partie_1 > .miniature a").unbind("click").click(function(){
				var src = $("img", this).attr("src").replace(/_PV_/, "_FV_").replace(/_PV/, "_F");
				$("#imageArticle").attr("src", src);
				return false;
			});
		}
	}
}






// Gestion du produit browseable
var Browse = {
	ajaxurl: PATHRACINE + "/AjaxProduct",
	start: 0,
	zone: null,
	
	int:{
		numFound: 0,
		query: "",
		search: "",
		marque: "",
		facet: ""
	},
	
	load: function(param){
		$.extend(this, this.init, param);
		this.zone = $(".menu_gauche > .browse");
		this.click();
	},
	
	click: function(){
		$(".backProd", this.zone).click(function(){
			Browse.open(-1); return false;
		});
		$(".nextProd", this.zone).click(function(){
			Browse.open(+1); return false;
		});
	},
	
	open: function(ordre){
		if((ordre == -1 && this.start > 0) || (ordre == 1 && this.start < this.numFound)){
			this.start += ordre;
			var psearch = (this.search != "") ? "&search=" + this.search : "";
			var pmarque = (this.marque != "") ? "&marque=" + this.marque : "";
			var pfacet = (this.facet != "") ? "&facet=" + this.facet : "";
			
			var param = PARAMGLOBAL +"&q="+ this.query +"&start=" + this.start + psearch + pmarque + pfacet;
			
			$.getScript(this.ajaxurl + "?" + param);
		}
	},
	
	maj: function (lien, desc, img){
		$(".article a", this.zone).attr("href", lien);
		$(".article a img", this.zone).attr("src", img);
		$(".description", this.zone).html(desc);
	}
}

function validateCommentaireExpert(ProductID, ProductCode) {
	var formOK = true;
	
	var value = $("#nomClientCommentaire").val();
	if(value == "Votre nom" || value == "" || value == "Nom invalide"){
		$("#nomClientCommentaire").attr("value", "Nom invalide");
		formOK = false;
		$("#nomClientCommentaire").removeClass("color666666");
		$("#nomClientCommentaire").addClass("rouge");
	}
	
	value = $("#clientCommentaire").val();
	if(value == "Votre commentaire" || value == "" || value == "Merci de saisir un commentaire"){
		$("#clientCommentaire").attr("value", "Merci de saisir un commentaire");
		formOK = false;
		$("#clientCommentaire").removeClass("color666666");
		$("#clientCommentaire").addClass("rouge");
	}
	
	
	var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
	value = $("#emailClientCommentaire").val();
	if(value == "Votre email" || value == "" || value == "E-mail invalide" || reg.test(value) == false){
		$("#emailClientCommentaire").attr("value", "E-mail invalide");
		formOK = false;
		$("#emailClientCommentaire").removeClass("color666666");
		$("#emailClientCommentaire").addClass("rouge");
	}
	
	if (formOK == false) {
		return;
	}
	else {
		$.ajax({
			   type: "POST",
			   url: PATHRACINE + "/ExpertCommentary?ProductID="+ProductID+"&ProductCode="+ProductCode,
			   data: "nomClientCommentaire="+$("#nomClientCommentaire").val()+"&clientCommentaire="
			   +$("#clientCommentaire").val()+"&emailClientCommentaire="+$("#emailClientCommentaire").val(),
			   success:function(data){
				$(".epf_contenu").text("");
				$(".epf_form").text(data);
				$(".epf_btn").text("");
			}});
	}
}

function printProduct(page){
	window.open(page,"impression","menubar=no, status=no, menubar=no, scrollbars = yes, resizable = yes, width=800, height=800");
}

function noPricePrintProduct(params){
	if($("select", Cart.zone).length == 0 || $("select", Cart.zone).length == $("select[value != '0']", Cart.zone).length) {
		printProduct(params+'&'+WishList.skus_id);
	}
	else {
		alert('Veuillez d\'abord compléter la selection de vos articles');
	}
}
