
var _ASCR = "factory";

function UpdateBlockPanier(devise,fdp,total,count,fdg){
	var articles = "";

	var h = (Math.round(total*100) - Math.round(fdp*100) - Math.round(fdg*100)) / 100;
	$("panierTotal").innerHTML = DecimalFormat(h) + " " + devise;
	$("panierCount").innerHTML = count;
	if (count > 1) articles = "articles";
	else if (count == 0) articles = "article(s)";
	else articles = "article";
	$("labelArticle").innerHTML = articles;
}
function UpdateTotalPanier(devise,fdp,ht,tva,ttc,fdg,coupon){
	$("TotalFDP").innerHTML = DecimalFormat(fdp) + " " + devise;
	$("TotalHT").innerHTML = DecimalFormat(ht) + " " + devise;
	$("TotalTVA").innerHTML = DecimalFormat(tva) + " " + devise;
	$("TotalTTC").innerHTML = DecimalFormat(ttc) + " " + devise;
	if($("TotalCOUP")) $("TotalCOUP").innerHTML = DecimalFormat(coupon) + " " + devise;
	if($("TotalFDG")) $("TotalFDG").innerHTML = DecimalFormat(fdg) + " " + devise;
}

function RedirectToPanier(){
	var file = window.location.href;
	if(file.indexOf("livraison.cfm") != -1 || file.indexOf("paiement.cfm") != -1 || file.indexOf("confirmation.cfm") != -1){
		window.location = pagesURL + "panier.cfm";
	}
}

var flag_ajout_en_masse = 0;
function PanierAdd_Response(ajout){
//dump(ajout);
	if(ajout.reponse.recode == 0){
		if(ajout.panier.lines.length == 0){
			UpdateBlockPanier(ajout.panier.devise,0,0,0,0);
		}else{
			UpdateBlockPanier(ajout.panier.devise,ajout.panier.frais_port,ajout.panier.total_ht,ajout.panier.nb_produits,ajout.panier.frais_gestion);
			
			var lines = ajout.panier.lines;
			for(var i=0; i<lines.length; i++){
				if(lines[i].panier_id == ajout.reponse.insert_row){
					$("popUp_prodName").innerHTML = lines[i].model + " - " + lines[i].nom;
					$("popUp_prodImg").src = lines[i].image_e;
					//$("popUp_prodPrice").innerHTML = DecimalFormat(lines[i].prix_catalogue);
				}
			}
			if(flag_ajout_en_masse <= 0) Popup.AddToCart();
			else flag_ajout_en_masse--;
		}
	}
}

function PanierAddKit_Response(ajout){
	return PanierAdd_Response(ajout);
}

function PanierDelete_Response(del){
	var id=del.del.panier_id;
	var p=del.panier;
	
	while($("panier" + del.del.panier_id)){
		$("panier" + del.del.panier_id).parentNode.removeChild($("panier" + del.del.panier_id));
	}
	while(document.getElementById("child"+del.del.panier_id)){
		$("child" + del.del.panier_id).parentNode.removeChild($("child" + del.del.panier_id));
	}
	
	var nids = "";
	if(p.count > 0){
		for(var i=0; i<p.lines.length; i++){
			var l = p.lines[i];
			if(nids != "") nids += ","; nids += l.panier_id;
		}
	}
	document.form_panier.list_panier_id.value = nids;

	UpdateBlockPanier(p.devise,p.frais_port,p.total_ht,p.nb_produits,p.frais_gestion);
	if(p.count > 0){
		UpdateTotalPanier(p.devise,p.frais_port,p.total_ht,p.tva,p.total_ttc,p.frais_gestion,p.montant_coupon);
	}else{
		UpdateTotalPanier(p.devise,0,0,0,0,0,0);
	}
}

function PanierUpdateSubmit(){
	var ids = document.form_panier.list_panier_id.value.split(',');
	var lq="",lp="";la="";lg="",d="document.form_panier.";
	var valid_ids = "";
	for(var i=0; i<ids.length; i++){
		var pid = ids[i];
		var qfield = eval(d+"quantite_"+pid);
		if(typeof qfield == 'undefined') continue;
		
		valid_ids+=pid + ",";
		lq+=",0"+eval(d+"quantite_"+pid+".options["+d+"quantite_"+pid+".selectedIndex].value");
		lp+=",0"+eval(d+"produit_"+pid+".value");
		la+=",0"+eval(d+"attribut_"+pid+".value");
		var g=eval(d+"garantie_"+pid);
		if(g) lg+=","+g.options[g.selectedIndex].value;
		else lg+=",0";
	}
	PanierUpdate(valid_ids,lq.substr(1),lp.substr(1),la.substr(1),lg.substr(1),document.form_panier.code_coupon.value);
}

function PanierUpdate_Response(upd){
//dump(upd);
	var ids = ","+document.form_panier.list_panier_id.value+",";
	var nids = "";
	var d = "document.form_panier.";
	var p=upd.panier;
	
	if(p.count > 0){
		for(var i=0; i<p.lines.length; i++){
			var l = p.lines[i];
			if(typeof eval(d+"quantite_"+l.panier_id) == 'undefined') continue;
			eval(d+"quantite_"+l.panier_id+".value="+l.quantite);
			$("prix"+l.panier_id).innerHTML = DecimalFormat(l.prix_ligne_ht) + " " + p.devise;
			$("total"+l.panier_id).innerHTML = DecimalFormat(Number(l.prix_ligne_ht)*Number(l.quantite)) + " " + p.devise;
			ids = ids.replace(","+l.panier_id+",", ",");
			if(nids != "") nids += ","; nids += l.panier_id;
		}
	}
	if(ids != ","){
		ids = ids.split(",");
		for(var i=1; i<ids.length-1; i++){
			var panier = $("panier" + ids[i]).parentNode;
			panier.removeChild($("panier" + ids[i]));
			while(document.getElementById("child"+ids[i])){
				panier.removeChild($("child" + ids[i]));
			}
		}
	}
	document.form_panier.list_panier_id.value = nids;

	UpdateBlockPanier(p.devise,p.frais_port,p.total_ht,p.nb_produits,p.frais_gestion);
	UpdateTotalPanier(p.devise,p.frais_port,p.total_ht,p.tva,p.total_ttc,p.frais_gestion,p.montant_coupon);
}

function Login_Response(login){
	if(login.reponse.recode == 0){
		//$("VotreCompteNom").innerHTML = login.user.nom + " " + login.user.prenom;
		$("BlockIdentification").style.display = "none";
		$("BlockMembre").style.display="block";
		RedirectToPanier();
	}else{
		var messages = '';
		for(var i=0; i<login.reponse.errors.length; i++){
			messages += login.reponse.errors[i].message + "\n";
		}
		alert(messages);
	}
}

function Logout_Response(logout){
	document.login_block_form.password.value = "";
	$("BlockIdentification").style.display = "block";
	$("BlockMembre").style.display="none";
	RedirectToPanier();
}

function Mailing_Response(mailing){
	$("MailingError").style.display = "none";
	$("MailingOk").style.display = "none";
	if(mailing.reponse.recode == 0){
		$("MailingOk").style.display = "block";
		$("MailingOk").innerHTML = mailing.reponse.message;
	}else{
		$("MailingError").innerHTML = mailing.reponse.errors[0].message;
		$("MailingError").style.display = "block";
	}
	Popup.Mailing();
}

function NouveauCompteSubmit(){
	var civilite = document.new_account_form.civilite.options[document.new_account_form.civilite.selectedIndex].value;
	var nom = document.new_account_form.nom.value;
	var prenom = document.new_account_form.prenom.value;
	var societe = document.new_account_form.societe.value;
	var email = document.new_account_form.email.value;
//	var jour_naissance = document.new_account_form.jour_naissance.value;
//	var mois_naissance = document.new_account_form.mois_naissance.value;
//	var annee_naissance = document.new_account_form.annee_naissance.value;
	var username = document.new_account_form.username.value;
	var password1 = document.new_account_form.password1.value;
	var password2 = document.new_account_form.password2.value;
//	var adresse1 = document.new_account_form.adresse1.value;
//	var adresse2 = document.new_account_form.adresse2.value;
//	var cp = document.new_account_form.cp.value;
//	var ville = document.new_account_form.ville.value;
//	var pays = document.new_account_form.pays.value;
	var tel = document.new_account_form.tel.value;
//	var mobile = document.new_account_form.mobile.value;
	var fax = document.new_account_form.fax.value;
//	var parrain1 = document.new_account_form.parrain1.value;
//	var parrain2 = document.new_account_form.parrain2.value;
	var profession = document.new_account_form.profession.value;
//	var connu = document.new_account_form.connu.value;
//	var format = document.new_account_form.format.value;
	var num_tva = document.new_account_form.num_tva.value;
	var siret = document.new_account_form.siret.value;
//	var type_client = document.new_account_form.type_client.value;
//	var numero_fidelite = document.new_account_form.numero_fidelite.value;
//	var street_nr = document.new_account_form.street_nr.value;
	var effectif = document.new_account_form.effectif.value;
	var naf = document.new_account_form.naf.value;
//	var fonction = document.new_account_form.fonction.value;
//	var service = document.new_account_form.service.value;
	
	if (siret.length != 14) 
	{	
		$("div_siret").innerHTML = "Le numero de SIRET n'est pas valide";
		$("div_siret").style.display = "block";
	}
	else NouveauCompte(civilite,nom,prenom,societe,email,"","","",username,password1,password2,"","","","","",tel,"",fax,"","",profession,"","",num_tva,siret,"","","",effectif,naf,"","");
}

function NouveauCompte_Response(nc){
	if(nc.reponse.recode == 0){
		document.new_account_form.submit();
	}else{
		for(var field in nc.compte){
			var li = $("label_" + field);
			if(li){
				var div = li.getElementsByTagName("div")[0];
				if(div) div.style.display = "none";
			}
		}
	
		for(var i=0; i<nc.reponse.errors.length; i++){
			var err = nc.reponse.errors[i];
			if(err.champ != ""){
				var li = $("label_" + err.champ);
				if(li){
					var div = li.getElementsByTagName("div")[0];
					if(div){
						div.innerHTML = err.message;
						div.style.display = "block";
					}
				}
			}else{
				$('errormsg').innerHTML = err.message;
			}
		}
		
		window.location = "#TopForm";
	}
}


function ComptePersoSubmit(){
	var civilite = document.new_account_form.civilite.options[document.new_account_form.civilite.selectedIndex].value;
	var nom = document.new_account_form.nom.value;
	var prenom = document.new_account_form.prenom.value;
	var societe = document.new_account_form.societe.value;
	var email = document.new_account_form.email.value;
//	var jour_naissance = document.new_account_form.jour_naissance.value;
//	var mois_naissance = document.new_account_form.mois_naissance.value;
//	var annee_naissance = document.new_account_form.annee_naissance.value;
//	var username = document.new_account_form.username.value;
	var old_password = document.new_account_form.old_password.value;
	var password1 = document.new_account_form.password1.value;
	var password2 = document.new_account_form.password2.value;
//	var adresse1 = document.new_account_form.adresse1.value;
//	var adresse2 = document.new_account_form.adresse2.value;
//	var cp = document.new_account_form.cp.value;
//	var ville = document.new_account_form.ville.value;
//	var pays = document.new_account_form.pays.value;
	var tel = document.new_account_form.tel.value;
	var mobile = document.new_account_form.mobile.value;
	var fax = document.new_account_form.fax.value;
//	var parrain1 = document.new_account_form.parrain1.value;
//	var parrain2 = document.new_account_form.parrain2.value;
	var profession = document.new_account_form.profession.value;
//	var connu = document.new_account_form.connu.value;
//	var format = document.new_account_form.format.value;
	var num_tva = document.new_account_form.num_tva.value;
	var siret = document.new_account_form.siret.value;
//	var type_client = document.new_account_form.type_client.value;
//	var numero_fidelite = document.new_account_form.numero_fidelite.value;
//	var street_nr = document.new_account_form.street_nr.value;
	var effectif = document.new_account_form.effectif.value;
	var naf = document.new_account_form.naf.value;
//	var fonction = document.new_account_form.fonction.value;
//	var service = document.new_account_form.service.value;
	if (siret.length != 14) alert("Le numero de SIRET n'est pas valide");
	else ComptePerso(civilite,nom,prenom,societe,email,"","","",old_password,password1,password2,"","","","","",tel,mobile,fax,"","",profession,"","",num_tva,siret,"","","",effectif,naf,"","");
}

function ComptePerso_Response(nc){
	NouveauCompte_Response(nc);
}

function LivraisonGetAdresse_Response(liv){
	document.formlivraison.prenom.value = liv.adresse.prenom;
	document.formlivraison.nom.value = liv.adresse.nom;
	document.formlivraison.email.value = liv.adresse.email;
	document.formlivraison.societe.value = liv.adresse.societe;
	document.formlivraison.adresse1.value = liv.adresse.adresse1;
	document.formlivraison.adresse2.value = liv.adresse.adresse2;
	document.formlivraison.cp.value = liv.adresse.cp;
	document.formlivraison.ville.value = liv.adresse.ville;
	document.formlivraison.pays.value = liv.adresse.pays;
	document.formlivraison.tel.value = liv.adresse.tel;
	document.formlivraison.fax.value = liv.adresse.fax;
}

function LivraisonSubmit(){
	Livraison(
		document.formlivraison.nom.value,
		document.formlivraison.prenom.value,
		document.formlivraison.societe.value,
		document.formlivraison.email.value,
		document.formlivraison.adresse1.value,
		document.formlivraison.adresse2.value,
		document.formlivraison.cp.value,
		document.formlivraison.ville.value,
		document.formlivraison.pays.options[document.formlivraison.pays.selectedIndex].value,
		document.formlivraison.tel.value,
		document.formlivraison.fax.value,
		document.formlivraison.mode_livraison.value
	)
}

function Livraison_Response(liv){
	if(liv.reponse.recode == 0){
		document.formlivraison.submit();
	}else{
		for(var field in liv.adresse){
			var li = $("label_" + field);
			if(li){
				var div = li.getElementsByTagName("div")[0];
				if(div){
					div.innerHTML = "";
					div.style.display = "none";
				}
			}
		}
		$("errorMsgssfond").innerHTML = "";
		$("errorMsgssfond").style.display = "none";
	
		for(var i=0; i<liv.reponse.errors.length; i++){
			var err = liv.reponse.errors[i];
			if(err.champ != ""){
				var li = $("label_" + err.champ);
				if(li){
					var div = li.getElementsByTagName("div")[0];
					if(div && div.innerHTML == ""){
						div.innerHTML = err.message;
						div.style.display = "block";
					}
				}
			}else{
				$("errorMsgssfond").style.display = "block";
				$("errorMsgssfond").innerHTML += err.message + "<br>";
			}
		}
	
		window.location = "#TopForm";
	}
}

/****** quick commande ajax ******/
function QuickCommandeMini(){
	Url = "/e_commerce/utils/quickcommande.cfm?";
	Url += "c1="+$("code_commande").value+"&";
	Url += "q1="+$("qte").value+"&";
	Url += "n=1";
	makeRequest(Url, 'QuickCommande');
	$("code_commande").value="";
	$("qte").value="";
}
function QuickCommande(){
	var i=1;
	var Url = "/e_commerce/utils/quickcommande.cfm?";
	while($("code_commande"+i)){
		Url += "c"+i+"="+$("code_commande"+i).value+"&";
		Url += "q"+i+"="+$("qte"+i).value+"&";
		$("code_commande"+i).value="";
		$("qte"+i).value="";
		i++;
	}
	Url += "n="+(i-1)+"&";
	makeRequest(Url, 'QuickCommande');
}

function QuickCommande_Response(quickcommande){
	if(quickcommande.reponse.recode != 0){
		var errs = quickcommande.reponse.errors
		var s="";
		for(var i=0; i<errs.length; i++){
			s+=errs[i].message + "\n";
		}
		alert(s);
	}
	quickcommande.recode = "0";
	UpdateBlockPanier(quickcommande.panier.devise,quickcommande.panier.frais_port,quickcommande.panier.total_ht,quickcommande.panier.nb_produits,quickcommande.panier.frais_gestion);
}