/**
 * Gestion de l'ajout a la wishlist
 */

//Raccourci fonction Ajax
function WLI(id, nom, classe){WishList.addListe(id, nom, classe);}
function WLM(){WishList.displayListe();}
function WLE(data){WishList.msg(data);}
function WLC(){WishList.close();}
function WLP(skus_id){WishList.skus_id = skus_id;}


var WishList = {
	ajaxurl: PATHRACINE + "/AjaxUpdateList",
	liste: "",
	zone : null,
	zoneselect: null,
	skus_id: null,
	
	load : function(zone, zoneselect, skus_id){
		this.zone = zone;
		this.zoneselect = zoneselect;
		this.skus_id = skus_id;
			
		$(".btnAddList").click(function(){
			WishList.open();
			return false;
		});
		
		$(".btnNewList", this.zone).click(function(){
			if ($("#textCreateWL").val() == "Nouvelle sélection"){
				$("#textCreateWL").css("color","red");
				return false;
			}else{
				if ($("#textCreateWL").val() == ""){
					$("#textCreateWL").css("color","red");
					$("#textCreateWL").val("Nouvelle sélection");
					return false;
				} else {
					$("#textCreateWL").css("color","");			
					WishList.newListe();
					return false;
				}
			}
		});
		
		$(".haut", this.zone).click(function(){
			WishList.close();
		});	
				
		$("#textCreateWL").focus(function(){
			if ($("#textCreateWL").val() == "Nouvelle sélection"){
				$("#textCreateWL").css("color","");
				$("#textCreateWL").val("");	
			}
		});
		
		$("#textCreateWL").blur(function(){
			if ($("#textCreateWL").val() == ""){
				$("#textCreateWL").val("Nouvelle sélection");	
			}
		});
	},
	
	// Charge la liste
	open:function(){
		$.getScript(this.ajaxurl +"?"+ PARAMGLOBAL, function(){
			WishList.zone.animate({height:"show"},"normal");
		});
	},
	
	// Afficher un msg d'erreur
	msg: function(data){
		var link = '<a href="' + PATHRACINE + '/' + 'Identification?' + PARAMGLOBAL +'">' + data + '</a>';
		$(".milieu", this.zone).empty().html(link);
		$(".milieu", this.zone).addClass("center");
		$(".bas input", this.zone).val("").attr("disabled", "disabled");
		$(".bas .input", this.zone).hide();
		$(".bas .img", this.zone).hide();
	},

	// Ajoute une wishlist dans la liste
	addListe: function(id, nom, classe){
		var classe = (classe != null) ? ' class="'+ classe +'"' : '';
		this.liste += '<li><a href="#" rel="'+ id +'"'+ classe +'>'+ nom +'</a></li>';
	},
	
	// Affiche la WishListe
	displayListe: function(){
		if(this.liste != ""){
			$(".milieu", this.zone).html("<ul>"+ this.liste +"</ul>");
			$("ul a", this.zone).click(function(){
				WishList.majListe($(this).attr("rel"));
				return false;
			});
			this.liste = "";
		}
		$(".bas input", this.zone).removeAttr("disabled");
		$(".milieu", this.zone).removeClass("center");
		$(".bas .input", this.zone).show();
		$(".bas .img", this.zone).show();
	},
	
	// Nouvelle WishList
	newListe: function(){
		var nom = $("#textCreateWL[value != '']", this.zone).val();
		if (nom != null && $.trim(nom) != ""){
			this.majListe(null, nom);
		}
	},
	
	// Ajout le sku dans une list
	majListe: function(list_id, list_nom){
		if($("select", this.zoneselect).length == 0 || $("select", this.zoneselect).length == $("select[value != '0']", this.zoneselect).length){
			var list_id = (list_id != null && list_id != "") ? "&ListID="+ list_id : "";
			var list_nom = (list_nom != null && list_nom != "") ? "&ListNom="+ list_nom : "";
			
			var param = PARAMGLOBAL +"&"+ this.skus_id + list_id + list_nom;
			$.getScript(this.ajaxurl +"?"+ param);
			$("#textCreateWL[value != '']", this.zone).val("");
		}else{
			alert("Veuillez compléter la selection de vos articles");
		}
	},

	close: function(){
		this.zone.animate({height:"hide"},"normal");
	}
}