// add to basket
$(document).ready(function(){
	$('.add_to_basket_ajax').click(handleSubmitAddToBasket);
});

function handleSubmitAddToBasket(event) {
	var form   = $(this).closest("form");

	
	// change the success/error urls
	var successElement = form.find('[name=/atg/commerce/order/purchase/CartModifierFormHandler.addItemToOrderSuccessURL]');
	//successElement.val('/LW/jsp/basket/fragments/mini_basket.jsp?pop=1');

	// default to stwc url
	var successUrl = '/stwc/jsp/templates/homepage/mini_basket.jsp?pop=1';
	
	var ajaxSuccessUrlElement = form.find('[name=successUrlAjax]');
	
	if (ajaxSuccessUrlElement) {
		if (ajaxSuccessUrlElement.val()) {
			successUrl = ajaxSuccessUrlElement.val();
		}
	}
	
	successElement.val(successUrl);
	
	var errorElement = form.find('[name=/atg/commerce/order/purchase/CartModifierFormHandler.addItemToOrderErrorURL]');
	errorElement.val('/DWBase/jsp/common/fragments/ajax_error.jsp');
	
	var action = form.attr("action");
	var data   = form.formSerialize();
		
	// fix behaviour in IE!
	action = action.replace("#", "");
	
	$.ajaxSetup({ 
        scriptCharset: "utf-8"
	});
	
	$.ajax({
		type: 'POST',
		url: action,
		data: data,
		success: addToBasketCallback,
		error: function(xhr, text, err) { alert(text); },
		dataType: 'html',
		contentType: 'application/x-www-form-urlencoded'
	});
	
	event.preventDefault();
	return false;
};

function addToBasketCallback(data, textStatus) {
	
	if (data == 'error') {
		alert("error"+data);
	}
	else {
		$("#my_basket").html(data);
		
		// animate popup
	    $('#popup_basket').fadeIn('fast');
	    $('#popup_basket').animate({opacity: 1.0}, 2500);
		$('#popup_basket').hover(function(){
			$(this).stop(true, false);
			}, function(){
			$(this).stop().fadeOut('fast');
		});
	    $('#popup_basket').fadeOut('fast', function() {
	    	$('#popup_basket').hide();
	    });		
		
		// handle VBIS Add-To-Basket
		var skuId = $('#added_item_sku').html();
		if (skuId.length > 0) 
		{
			var vbisData= $('#atb_sku_' + skuId).html();
			if (vbisData.length > 0) 
			{
				SiSendAdditionalTracer("/atb.gif","addedbasketitem="+vbisData);
			}
		}
	}
}

