/**
 * Gestion de l'ajout au panier
 */


// Raccourci fonction Ajax
function cartc(param){Cart.click(param);}

var Cart = {
	zone: null,			/* Zone ou est situé les selectbox d'attribut */
	link: null,			/* Lien pour ajouter au panier */
	qte: null,			/* Quantité a ajouter au panier */
	qteValue: "Quantité",
	ajaxurl: PATHRACINE + "/AddCart",
	
	/* Definition du Panier */
	def: function(zone, link, qte, param, ajaxurl){
		this.zone = zone;
		this.link = link;
		this.qte = qte;
		if(ajaxurl != null){this.ajaxurl = ajaxurl;}
		
		// Gestion du textbox
		this.qte.blur(function(){
			if ($(this).val() == "") {
				$(this).val(Cart.qteValue);
			}
		}).focus(function(){
			if ($(this).val() == Cart.qteValue) {
				$(this).val("");
			}
			$(this).css("color","#666666");
		}).keypress(function(event){
			// Accepte que les nombres positif entier
			if(!event && window.event) {event = window.event;}

			if(event.keyCode != 0 && event.keyCode != 8 && event.keyCode != 46 && event.keyCode != 37 && event.keyCode != 39){
				if(event.keyCode < 48 || event.keyCode > 57) { event.returnValue = false; event.cancelBubble = true;}
			}
			
			if(event.which != 0 && event.which != 8 && event.which != 46 && event.which != 37 && event.which != 39){
				if(event.which < 48 || event.which > 57) { event.preventDefault(); event.stopPropagation();}
			} 	
		}).blur();

		this.click(param);
	},
	
	/* Lien Ajouter au panier */
	click: function(param){
		this.link.unbind("click").click(function(){
			
			var qte = Cart.qte.val();
			// Verifie la quantité
			if(parseInt(qte))
			{
				// Verifie les selectbox
				if($("select", Cart.zone).length == 0 || $("select", Cart.zone).length == $("select[value != '0']", Cart.zone).length){
					Cart.add(param, qte);
				}else{
					alert("Veuillez compléter la selection de vos articles");
				}
			}else{
				Cart.qte.blur().css("color","red");
				alert("Veuillez indiquer la quantité souhaitée");
			}
			return false;
			
		});
	},

	// Ajoute au panier
	add:function(param, qte){
		Box.open({ 
			modal: true,
			url: this.ajaxurl,
			urldata: PARAMGLOBAL +"&"+ param +"&Quantity="+ qte,
			show: function(){
				Cart.refresh();
				$(".addb_continuer").click(function(){
					Box._close();
					return false;
				});
			}
		});
	},

	/* Actualise le panier dans le header */
	refresh: function(){
		$.ajax({
		   type: "GET",
		   data:"Code_Langue="+ Code_langue + "&" + PARAMGLOBAL,
		   cache: false,
		   url: PATHRACINE + "/00-header/panier.jsp",
		   success: function(data){$(".panier").remove(); $("body").prepend(data);}
		});
	}	
}
