function add_to_cart()
{
	if(document.add_to_cart_form.onsubmit()) //this check triggers the validations
	{
		var url = '/catalog.php';
		var data = $('add_to_cart_form').serialize();
		var pars = 'action=add_product&'+data;
		varajax = new Ajax.Request(url, {method: 'get', parameters: pars,
			onComplete: function(originalRequest)
			{
				var response  = originalRequest.responseText.split('||');
				$('header_items_in_cart').update(response[0]);
				$('item_total_'+key).update(response[1]);		
				$('my_cart_subtotal').update(response[2]);
				$('my_cart_shipping').update(response[3]);
			}
		});
	}
}


function remove_product(key, description)
{
  var confirm_text = "Are you sure you want to remove this item?";
  if(description) { confirm_text += "\n"+description; }
	var answer = confirm(confirm_text)
	if (!answer){ return; }
	var url = '/catalog.php?action=remove_product&key='+key;
	new Ajax.Request(url, {
		method: 'get',
		onSuccess: function(transport) {
			var response = transport.responseText.split('||');
      if($('header_items_in_cart'))
        {
        $('header_items_in_cart').update(response[0]);
        }
      
			if(response[1]>0)
			{
				$('no_items') && $('no_items').hide();
				$('show_items') && $('show_items').show();
				$('my_cart_subtotal') && $('my_cart_subtotal').update(response[2]);
				$('my_cart_shipping') && $('my_cart_shipping').update(response[3]);
				$(key) && $(key).remove();
			}else{
				$('no_items').show();
				$('show_items').hide();
			}
		} //end onSuccess
  });
}

function update_cart(key, description)
{
	var qty = ($('qty_'+key).value);
	if(qty=='') return;
	qty = qty*1;
	if(qty==0){
		remove_product(key, description)
		return;
	}
	var url = '/catalog.php?action=add_product&key='+key+'&qty='+qty;
	new Ajax.Request(url, {
		method: 'get',
		onSuccess: function(transport) {
			var response = transport.responseText.split('||');
			$('item_total_'+key).update(response[1]);		
			$('my_cart_subtotal').update(response[2]);
			$('my_cart_shipping').update(response[3]);
		}
	});
}				