function removeVariantFromCart(
		displayNr)
{
	console.log("removeVariantFromCart(" + displayNr + ")");
	console.log("$('a#delete_" + displayNr + "')");
	console.log("deleteLnk" + deleteLnk);
	var deleteLnk = $("a#delete_" + displayNr);

	var productRow = deleteLnk.parent().parent();
	console.log("productRow" + productRow);

	var updateBtn = $('.btn-einzelpreis-save', productRow);
	console.log("updateBtn" + updateBtn);

	var qtyField = $('.einzelpreis-itxt', productRow);
	console.log("qtyField" + qtyField);

	qtyField.val('0');
	updateBtn.click();

}

function removeVariant(
		p_displayNr,
		p_remQty)
{
	var orderTable = $("#orderTable");
	var cartTable = $("#cartTable");

	if (orderTable.position() != null || cartTable.position() != null)
	{
		console.log("order or cart view");
		removeVariantFromCart(p_displayNr);
	}
	else
	{
		$.ajax(
		{
			type : "POST",
			url : "/checkout/cart/minicart/remove.action",
			cache : false,
			data :
			{
				displayNr : p_displayNr,
				remQty : p_remQty
			},
			dataType : "text",
			success : function(
					msg)
			{
				var results = msg.split("#");
				$("#" + results[0] + "_minicart").remove();
				document.getElementById(minicartSizeFadeId).innerHTML =
						"Warenkorb ( " + results[1] + " ) EUR " + results[2];

				document.getElementById(minicartSizeId).innerHTML =
						"Warenkorb ( " + results[1] + " ) EUR " + results[2];

				document.getElementById(minicartPriceId).innerHTML =
						"EUR " + results[2];

				document.getElementById(minicartDeliveryCostsId).innerHTML =
						"EUR " + results[3];

				$(document).trigger("cartChanged",
				{
					type : "remove"
				});

				// delete from cart view
				// $(".warenkorb-table ."+code+"").remove();
				// console.log(code+" gelöscht")
			},
			error : function(
					msg)
			{
				alert(msg);
			}
		});
	}
}

function addToCart(
		p_variantId,
		p_quantity)
{
	$.ajax(
	{
		type : 'GET',
		url : '/checkout/cart/addVariant.action',
		async : false,
		cache : false,
		data :
		{
			variantId : p_variantId,
			quantity : p_quantity
		},
		dataType : 'json',
		error : function(
				XMLHttpRequest,
				textStatus,
				errorThrown)
		{
			console.error(XMLHttpRequest, textStatus, errorThrown);
		},
		success : function()
		{
			updateCart();
		}
	});
}

// refreshes the minicart box and headline
function updateCart()
{
	console.log("updating cart ...");
	invokeTracking();
	$.ajax(
	{
		url : '/checkout/cart/minicart/show.action',
		cache : false,
		error : function(
				XMLHttpRequest,
				textStatus,
				errorThrown)
		{
			console.error(XMLHttpRequest, textStatus, errorThrown);
		},
		success : function(
				data)
		{
			console.log(">  got cart data");
			$('#minicart #minicartSize').html($('#minicartSize', data).html());
			$('#minicart #minicartSizeFade').html(
					$('#minicartSizeFade', data).html());

			$('#minicart .scroll-basket-box').html(
					$('.scroll-basket-box', data).html());

			console.log("... done updating cart");
			$(document).trigger("cartChanged",
			{
				type : "add"
			});
		}
	});
}

function resizeCart()
{
	$minicart = $("#minicart");
	var itemCount =
			$minicart.find(".scroll-basket-box .basket-scroll-item").size();

	var newHeight = basketItemHeight * 1;
	if (itemCount > 0 && itemCount < 3)
	{
		newHeight = basketItemHeight * itemCount;
	}
	console.log("having "
			+ itemCount
			+ " items, resizing to "
			+ newHeight
			+ " px");

	console.log("checking cart link");
	if (itemCount==0)
	{
		console.log("removing cart link");
		$("#minicart a.basket-flexi").removeAttr("href");
	} 
	else 
	{
		console.log("adding cart link");
		$("#minicart a.basket-flexi").attr("href","/checkout/cart/show.action");
	}
	$("#minicart .scroll-basket-box .basket-scroll-area").height(newHeight);
	$("#minicart .basket-scroll-area .scroll-pane").height(newHeight).show();

	

	$(".scroll-basket-box .scroll-pane").show().jScrollPane();
}
