/******************************************************************************
* ixgardBasket.js
******************************************************************************/

isoYUILoader.onReady( function() {
    YAHOO.util.Event.onContentReady("ixgardBasketSummary", function() {

		var basketSummary = document.getElementById('ixgardBasketSummary');	
		gshp.basket.on('ready', function () {
			updateBasketView ();
		});
		
		gshp.basket.on('change', function () {	
			updateBasketView ();
		});

		gshp.basket.on('busyStart', function () {
		});
	
		gshp.basket.on('busyEnd', function () {	
		});
		
		gshp.basket.on("actionFail",function (msg) {
			alert(msg);
		});

	  
		/* Rendu Panier */
		function updateBasketView () {
			if (!gshp.basket.isEmpty()) {
				var nbreProduit = 0;	
				var prixTotalHT = 0;
				var prixTotalTTC = 0;

				gshp.basket.eachItem(function (item) {
					nbreProduit = nbreProduit + parseFloat(item.getField('quantity'));
					prixTotalTTC = prixTotalTTC + parseFloat(item.getField('effectiveTotalVatPrice'));
				});
				
				basketSummary.innerHTML = nbreProduit + " articles dans mon panier valeur ";
				basketSummary.innerHTML += prixTotalTTC.toFixed(2) + " &euro;";
			}
			else {
				basketSummary.innerHTML = "Panier vide";
			}
		}
		
		
		//Modification de la quantité d’un article à l’aide du clavier numérique
		var inputKeyboard = YAHOO.util.Dom.getElementsByClassName('ixgardBasketQuantityInput', 'input');
		if (inputKeyboard[0] != null) {
			qteField = inputKeyboard[0];	
			document.onkeydown=function(e) {
				var e=window.event || e
				if ((e.keyCode == "107") && !isNaN(parseInt(qteField.value))) {
					qteField.value = parseInt(qteField.value) + 1
				}
				if ((e.keyCode == "109") && !isNaN(parseInt(qteField.value)) && parseInt(qteField.value) > 1) {
					qteField.value = parseInt(qteField.value) - 1
				}	
			}
		}
	});
});

			
function ixgardAddToBasket(oid) {
	if (oid != null) {
		var quantityInput = document.getElementById("gshpBasketQuantityInputId"+oid);
		var q = quantityInput.value;
		
		if (q.match(/^[1-9][0-9]*$/)) {
			gshp.basket.addReference(oid,parseInt(q,10));
			
			YAHOO.util.Dom.setStyle('gshpBasketBtn'+oid, 'background', 'transparent url(iso_icons/ixgardloadingBasket.gif) no-repeat scroll right -2px');
			
			var blockImage = document.getElementById('ixgardBanner');
			var iconBasket = document.getElementById('ixgardIconbasket');
			var iconBasketX = YAHOO.util.Dom.getX(iconBasket)
			var iconBasketY = YAHOO.util.Dom.getY(iconBasket)
			var imageProduit = document.getElementById('productMainPicture');	
			var cloneImageProduit = imageProduit.cloneNode(true);

			blockImage.appendChild(cloneImageProduit);
			var xy = YAHOO.util.Dom.getXY(imageProduit); 
			YAHOO.util.Dom.setXY(cloneImageProduit, xy);	
			YAHOO.util.Dom.setStyle(cloneImageProduit, 'z-index', '10');
			YAHOO.util.Dom.setStyle(cloneImageProduit, 'position', 'absolute');
			
			var attributes = { 
				points: { to: [iconBasketX + 50, iconBasketY] }, 
				height: { to: 0 }, 
	   			width: { to: 0 },
				opacity: { to: 0 }
			}; 
			var anim = new YAHOO.util.Motion(cloneImageProduit, attributes, 0.7, YAHOO.util.Easing.easeOut);
			anim.animate();

			anim.onComplete.subscribe(function() { 
				blockImage.removeChild(cloneImageProduit);
			}); 		

			gshp.basket.on('busyEnd', function () {
				YAHOO.util.Dom.setStyle('gshpBasketBtn'+oid, 'background', 'transparent url(iso_icons/ixgardcaddie.png) no-repeat scroll right 2px');
			});
		}
		else
			alert("La quantité saisie n'est pas valide");
	}
}