
var Webshop = {
	__quantity: 0,
	
	__allowSubmit: true,
	
	allowSubmit: function()
	{
		return this.__allowSubmit;
	},
	
	setQuantity: function(quantity)
	{
		this.__quantity = quantity;
	},
	
	quantityChanged: function(productID, input)
	{
		this.quantityProtect(input);
		var previousQuantity = this.__quantity;
		var quantity = parseInt(input.value);
		if ( isNaN(quantity) )
		{
			input.value = previousQuantity;
		}
		else if ( quantity <= 0 )
		{
			if ( !this.removeProductFromCart(productID) )
			{
				input.value = previousQuantity;
			}
		}
		else
		{
			var form = document.forms['webshop-form'];
			form.elements['action'].value = 'change-product-quantity';
			form.elements['product'].value = productID;
			form.elements['value'].value = quantity;
			form.submit();
		}
	},
	
	quantityProtect: function(input)
	{
		this.__allowSubmit = input.value == this.__quantity;
	},
	
	addProductToCart: function(productID)
	{
		var form = document.forms['webshop-form'];
		form.elements['action'].value = 'add-product-to-cart';
		form.elements['product'].value = productID;
		form.submit();
	},
	
	removeProductFromCart: function(productID)
	{
		if ( confirm('Weet u zeker dat u dit product uit de winkelwagen wil verwijderen?') )
		{
			var form = document.forms['webshop-form'];
			form.elements['action'].value = 'remove-product-from-cart';
			form.elements['product'].value = productID;
			form.submit();
			return true;
		}
		return false;
	},
	
	invoiceAddressCheckBoxChanged: function(checkBox)
	{
		document.getElementById('invoice_address').style.display = checkBox.checked ? 'none' : 'block';
	}
};

