// JavaScript Document
function add_to_cart(prod){	
	//get each cart variation on the page
	var params = new Array();
	$$('select.variation').each(
		function(item){
			var el = $(item);
			params.push("id[]="+el.id+"&value[]="+el.value);
		}
	);
	params = params.join("&");
	prod_id = prod;
	if($('prod_qty')) var qty = $('prod_qty').value;
	else var qty = 1;
	var params = "prod_id="+prod_id+"&"+params+"&qty="+qty;
	new Ajax.Request('/func/cart/add.php', {method: 'post', postBody: params, onComplete: toggle_response});
	
	jQuery.facebox.close();
}

function set_cart_timeout(x){
	$('spinner_'+x).style.display = 'inline';
	setTimeout('update_cart_qty('+x+')', 500);	
}

function delete_item(x){
	var params = "item="+x+"&qty=0";
	new Ajax.Request('/func/cart/update.php', {postBody: params, onComplete: function(){ setTimeout('get_cart_items(false, '+x+')', 100); }});
}

function update_cart_qty(x){
	var params = "item="+x+"&qty="+$('qty_'+x).value;
	new Ajax.Request('/func/cart/update.php', {postBody: params, onComplete: function(){ setTimeout('get_cart_items(false, '+x+')', 100); }});
}

function get_cart_items(display, x){
	if(display) $('cart_overview').update('<img src="/images/spinner.gif">&nbsp;&nbsp;&nbsp;Loading cart items...');
	update_count();
	new Ajax.Updater('cart_overview', '/func/cart/list.php', {onComplete: function(){ 
																				   		new Ajax.Request('/func/cart/totals.php', {onComplete: update_totals});
																				   		$('qty_'+x).focus();
																						new Effect.Highlight('item_row_'+x, {startcolor:'#E7EAED', endcolor:'#FFFFFF'});
																																										   		}
																});	
}

function update_totals(te){
	var t = te.responseText.split("|");
	$('totals_subtotal').innerHTML = "$"+t[0];
	$('totals_shipping').innerHTML = "$"+t[1];
	$('totals_total').innerHTML = "$"+t[2];
}


function toggle_response(t){
	var response = t.responseText;
	
	if(response == 'INVENTORY') display_out_of_stock();	
	else{
		view_cart();
		update_count();
	}
}

function display_out_of_stock(){
	if($('cart-error')){
		$('cart-error').show();
		$('cart-error').innerHTML = "<center>We're sorry, this product has no additional stock available.</center>";
		hide_cart();
	}
}

function update_count(){
	new Ajax.Updater('cart-count', '/func/cart/count.php')	;
}

function view_cart(){
	scrollTo(0,0);
	
	//hide select boxes
	//$$('select').each(
	//	function(item){
	//		var el = $(item);
	//		el.hide();
	//	}
	//);
	
	$('cart').show();
	new Ajax.Updater('cart','/func/cart/view.php');
}

function toggle_cart(){
	scrollTo(0,0);
	if($('cart').style.display == 'none') view_cart();
	else{
		//show select boxes
		//$$('select').each(
		//	function(item){
		//		var el = $(item);
		//		el.show();
		//	}
		//);
	
		$('cart').hide();
		
	}
}

function display_cart(){
	scrollTo(0,0);
	$('cart').show();
}

function hide_cart(){
	//show select boxes
		//$$('select').each(
		//	function(item){
			//	var el = $(item);
		//		el.show();
		//	}
		//);
		
	$('cart').hide();
}