window.addEvent('load', initOrderPane);

var paneMorph;

function initOrderPane()
{
	hideOrderPanes();	// was at the bottom for speedy execution, but had problems in Chrome where it got confused by inconsistent sizings of elements
//	hideTabDifferences();
	
	initTabs();
	
	initInputDefeat();

	initExpanders(); 		// expansion joints
	initItemAdds();			// clicking on the item will increase qty
	initItemControls(); 	// plus and minus commands
	
	initAjaxForm();			// the Shipwire API request box
	
	// initDetailTooltip();	// show tooltip of details when mousing over 'Details'

	initPayment();			// Override the payment buttons
}	
function hideOrderPanes()
{
	var panesToHide = new Array(//'ordercheckout',
								//'orderpayment',
								'orderpaymenttype'
								);

	panesToHide.each(function(element){
		$(element).store('css:height', $(element).getStyle('height'));
		$(element).store('css:padding', $(element).getStyle('padding'));
		$(element).store('css:paddingtop', $(element).getStyle('paddingTop').replace('px',''));
		$(element).store('css:paddingleft', $(element).getStyle('paddingLeft').replace('px',''));
		$(element).store('css:paddingright', $(element).getStyle('paddingRight').replace('px',''));
		$(element).store('css:paddingbottom', $(element).getStyle('paddingBottom').replace('px',''));

		$(element).setStyles({
								'overflow' : 'hidden',
								'height': 0,
								'padding': 0
							});
	});
}
/*function hideTabDifferences()
{
	$$('.tabB').setStyle('display', 'none');
}*/
function initInputDefeat()
{
	$$('input').addEvent('keydown', function(event){
		if(event.key == 'enter')
		{
			var event = new Event(event).stop();
		}			
	});
}

function initTabs()
{	
	paneMorph = new Fx.Morph($('paneviewport'), { 'link' : 'cancel' });
	var paneScroller = new Fx.Scroll($('paneviewport'), {'link' : 'cancel' });
	var viewerwidth = $$('.panesection')[0].getSize().x;
	var contentwidth = $$('.panesection').length * viewerwidth;
	
	$$('.panesection').setStyles({ 'float' : 'left' });
	
	$('panecontents').setStyle('width', contentwidth);
	$('paneviewport').setStyles({'width' : viewerwidth,
								 'overflow' : 'hidden'
								});
	
	paneMorph.set({'height' : $('orderpane').getSize().y});
	
	$('ordertab').getElements('li').each(function(element, i){
		var elMorph = new Fx.Morph(element, {'link' : 'cancel' });

		element.addEvent('click', function(e){
			var e = new Event(e).stop();
			element.fireEvent('changeTab');
		});

		element.addEvent('changeTab', function(){
//			var e = new Event(e).stop();
			
			var targetEl = $(element.get('id').replace('tabcontent','pane'));

			$$('#ordertab li').each(function(el){
					if(el != element)
					{
						el.morph({'borderBottomColor':'#000000'});
					}
				 });
			elMorph.start({ 'borderBottomColor' : '#ffff00' });

			if(targetEl.getSize().y > $('paneviewport').getSize().y)
			{
				paneMorph.start({'height':targetEl.getSize().y}).chain(function(){
						paneScroller.start(i*viewerwidth, 0);
					});
			}
			else
			{
				paneScroller.start(i*viewerwidth, 0).chain(function(){
						if(targetEl.getSize().y < $('paneviewport').getSize().y)
						{
							paneMorph.start({'height':targetEl.getSize().y});
						}
					});
			}
//			paneScroller.toElement(element.get('id').replace('tabcontent','pane'));
		}); 
	});
}

function initExpanders()
{
	var smoothScroller = new Fx.Scroll($(document.body), {
															'wheelStops': true,
															'wait' : 'ignore',
															'duration' : 1500,
															'transition' : Fx.Transitions.Quad.easeInOut
														});
	var doScrollFlag = true;
	var doCheckoutScrollFlag = true;

	$$('.cartitem').each(function(element){
		element.setStyle('cursor', 'pointer');

		element.addEvent('click', function(){
			var checkoutMorph = new Fx.Morph($('ordercheckout'), { 'link' : 'ignore' });
			var paymentMorph = new Fx.Morph($('orderpayment'), { 'link' : 'ignore' });
			
			if (doScrollFlag){
				var anchorPos = $('orderitems').getPosition().y;
				smoothScroller.start(0, anchorPos);
				doScrollFlag = false;
			}


			checkoutMorph.set({'height' : $('ordercheckout').retrieve('css:height'),
								'paddingTop': $('ordercheckout').retrieve('css:paddingtop'),
								'paddingLeft': $('ordercheckout').retrieve('css:paddingleft'),
								'paddingBottom': $('ordercheckout').retrieve('css:paddingbottom')
								}).chain(function(){
//									document.location.hash = 'orderitem';
/*														paymentMorph.start({'height' : $('orderpayment').retrieve('css:height'),
																		'padding': $('orderpayment').retrieve('css:padding')
																		});*/
													});
			paymentMorph.set({'height' : $('orderpayment').retrieve('css:height'),
								'paddingTop': $('orderpayment').retrieve('css:paddingtop'),
								'paddingLeft': $('orderpayment').retrieve('css:paddingleft'),
								'paddingBottom': $('orderpayment').retrieve('css:paddingbottom')
								}).chain(function(){
									
								});

			paneMorph.start({'height' : $('orderpane').getSize().y})
		});
	});
	
	$('cartpaymentbox').addEvent('click', function(){
//			$('cartpaymentdirective').set('text', 'pay now');

		if(parseInt($('cartqtytotal').get('text')) <= 0)
		{
			alert('Please add items to buy before checking out');
		}

		if($('singleshipping').get('value') > 0)
		{
			if (doCheckoutScrollFlag){
				var anchorPos = $('ordercheckoutline').getPosition().y;
				var anchorHeight = $('ordercheckoutline').getSize().y;
//					smoothScroller.start(0, anchorPos);
//				smoothScroller.toBottom();
//				smoothScroller.start(0, anchorPos + anchorHeight + window.getSize().y - 00);
				smoothScroller.start(0, 900);
				doCheckoutScrollFlag = false;
			}
		
			var paymenttypeMorph = new Fx.Morph($('orderpaymenttype'), {});
			paymenttypeMorph.set({ 'height' : $('orderpaymenttype').retrieve('css:height'),
									'paddingTop': $('orderpaymenttype').retrieve('css:paddingtop'),
									'paddingLeft': $('orderpaymenttype').retrieve('css:paddingleft'),
									'paddingBottom': $('orderpaymenttype').retrieve('css:paddingbottom')
								  });
			
			paneMorph.start({'height' : $('orderpane').getSize().y})
		}
		else
		{
			alert('Please get a shipping quote to continue.');
		}
	});
}
function initItemAdds()
{
/*		$$('.itembuynow').each(function(element){
		element.addEvent('click', function(e){
			var e = new Event(e).stop();
		});
	}); */
	$$('.cartitem').each(function(element){
		element.addEvent('click', function(e){
//				var e = new Event(e).stop();
			var priceEl = $('price' + element.get('id').replace('item', ''));
			priceEl.getElement('.qty').set('text', parseInt(priceEl.getElement('.qty').get('text')) + 1);
			
			updateQtyCSS();

			updateMasterTotal();
		});
	});
}
function initItemControls()
{
	$$('.addqty').each(function(element){
		if(element.hasClass('disable'))
		{
			element.addEvent('click', function(e){
			   var e = new Event(e).stop();
			});
			element.set('opacity', .5);
		}
		else
		{
			element.addEvent('click', function(e){
				var e = new Event(e).stop();
				var qtyEl = element.getParent('.cartquantity').getElement('.qty');
				
				var qty = parseInt(qtyEl.get('text'));
				qtyEl.set('text', qty + 1);
	
				updateQtyCSS();			
				updateMasterTotal();
			});
		}
	});
	$$('.remqty').each(function(element){
		if(element.hasClass('disable'))
		{
			element.addEvent('click', function(e){
			   var e = new Event(e).stop();
			});
			element.set('opacity', .5);
		}
		else
		{

			element.addEvent('click', function(e){
				var e = new Event(e).stop();
				var qtyEl = element.getParent('.cartquantity').getElement('.qty');
				
				var qty = parseInt(qtyEl.get('text'));
				if(qty > 0)
				{
					qtyEl.set('text', qty - 1);
				}
	
				updateQtyCSS();			
				updateMasterTotal();
			});		
		}
	});
}
	
function initPayment()
{	
	$('paypalbtn').addEvent('click', function(e){
//			var e = new Event(e).stop();
		setPayPalVars();
	});

	$$('.paymenttype').addEvent('click', function(){
//		alert('Pay ' + $('cartpaymentamt').get('text') + ' via ' + this.getElement('.paymentbox').get('text'));
	});
}

function updateQtyCSS()
{
	$$('.cartquantity .qty').each(function(element){
		var qty = parseInt(element.get('text'));
		if(qty > 0)
		{
			element.removeClass('zero');
		}
		else
		{
			element.addClass('zero');
		}
	});
}

function updateMasterTotal()
{
//		var currencySymbol = '<?=$pricing['currency'];?>';
	var	shipping = parseFloat($('singleshipping').get('value'));
	var discountShipping = parseFloat($('multipleshipping').get('value'));
	
	var total = 0;
	$$('.cartquantity .qty').each(function(element){
		total += parseInt(element.get('text'));
	});

	$('cartqtytotal').set('text', total);
	
	var totalprice = 0;
	$$('.cartprice .cartpricetxt').each(function(element){
		var price = parseFloat(element.get('text').replace(currencySymbol, ''));
		var itemname = element.getParent('.cartitem').get('id').replace('item','');
		
		var qty = parseInt($('price' + itemname).getElement('.qty').get('text'));

		totalprice += price * qty;
	});
	
	// apply coupon discount
	var discountPrice = totalprice;
	if (parseInt($('vars').getElement('input[name=discount_rate_cart]').get('value')) > 0)
	{
		discountPrice =  totalprice - (totalprice * parseInt($('vars').getElement('input[name=discount_rate_cart]').get('value')) / 100);
	}
	
	
	$('cartsubtotaltxt').set('text', currencySymbol + totalprice.toFixed(2));
	
	
	if(shipping > 0)
	{
		var shippingTotal = shipping;
		if(total > 1)
		{	shippingTotal = discountShipping;	}
					
		$('cartshippingtotaltxt').set('text', currencySymbol + shippingTotal.toFixed(2));

				
		var pretaxTotal = parseFloat(shippingTotal) + parseFloat(discountPrice);
		
		
		
		var gst = parseFloat($('gstrate').get('value')) * pretaxTotal;
		var pst = parseFloat($('pstrate').get('value')) * pretaxTotal;
		

		var finalTotal = pretaxTotal + gst + pst;
		finalTotal = finalTotal.toFixed(2);



//			totalprice = totalprice - (totalprice * parseInt($('vars').getElement('input[name=discount_rate_cart]').get('value')) / 100);			
		$('cartpaymentamt').set('text', currencySymbol + finalTotal);
	}
	else
	{
		$('cartpaymentamt').set('text', '');
	}
}



function initDetailTooltip()
{
	var detailTips = new Tips({'offset':{'x':16, 'y': -20}
							  });
	detailTips.attach('.itemdetails');	
}





function initAjaxForm()
{
	initAjaxFormControls();
	initAjaxFormUI();
	initAjaxFormBehaviours();
	initFormTaxes();
	initCouponBox();

	var myRequest = new Request({
									url: 'ajaxshipping.php', 
									method: 'post',
									noCache: 'true',
									onRequest: function(){
													$('singleshippingtxt').set("html", "Getting shipping quotes.<br /><br />This may take a while depending on your order size and location.<br><img src='imgs/ajax-loading.gif' />");
												},
									onSuccess: 	function(responseText, responseXML) {
//														alert(responseText);
													$('singleshippingtxt').set('html', responseText);
													initAjaxShippingControls();
												}
								});

	$('ajaxshippingbtn').addEvent('click', function(e){
		var e = new Event(e).stop();
		
		if(checkShippingForm())
		{
			var reqstring = 'shipto_country=' + $('shipto_country').get('value') + 
							'&shipto_address_1=' + $('shipto_address_1').get('value') + 
///							'&shipto_address_2=' + $('shipto_address_2').get('value') + 
//							'&shipto_address_3=' + $('shipto_address_3').get('value') + 
							'&shipto_city=' + $('shipto_city').get('value') + 
							'&shipto_provincelist=' + $('shipto_provincelist').get('value') + 
							'&shipto_region=' + $('shipto_region').get('value') +
							'&shipto_zip=' + $('shipto_zip').get('value') +
							'&blkqty=' + $('priceblack').getElement('.qty').get('text') +
							'&orgqty=' + $('priceoriginal').getElement('.qty').get('text') +
							'&silverqty=' + $('pricesilver').getElement('.qty').get('text') +
							'&goldqty=' + $('pricegold').getElement('.qty').get('text');
//			alert(reqstring);
			myRequest.send(reqstring);
		}
	});
}
function initAjaxFormControls()
{
	$('shippingquoteclosebtn').addEvent('click', function(e){
		var e = new Event(e).stop();
		$('shippingform').setStyle('display', 'none');
		
	});
	$('shippingquotebtn').addEvent('click', function(e){
		var e = new Event(e).stop();
		$('shippingform').setStyle('display','block');
	});
	
	$('closeshippingmodalbtn').addEvent('click', function(e){
		var e = new Event(e).stop();
		$('shippingform').setStyle('display', 'none');
	});
}
function initAjaxFormUI()
{
	var elementsToHide = Array($('shipto_address_1_row'),
								$('shipto_provincelist_row'),
								$('shipto_city_row'),
								$('shipto_region_row'),
								$('shipto_zip_row'),
								
								$('ajaxshippingbtn'),
								$('shipto_provincelist_row'),
								$('loadingoverlay'));
	$$(elementsToHide).setStyle('display', 'none');
	
/*		var elementsToShow = Array($('shipto_address_1_row'),
								$('shipto_provincelist_row'),
								$('shipto_city_row'),
								$('shipto_region_row'),
								$('shipto_zip_row')
								);
	$$(elementsToHide).setStyle('display', 'block');*/
}
function initFormTaxes()
{
	if($('gstrate').get('value') > 0)
	{
		$('gst').setStyle('display', 'block');
	}
	if($('pstrate').get('value') > 0)
	{
		$('pst').setStyle('display', 'block');
	}
	
}
function initAjaxFormBehaviours()
{
	euCountries = Array('AT', 'BE', 'CY', 'FI', 'FR','DE', 'GR', 'IE', 'IT', 'LU', 'MT', 'NL', 'PT', 'SK', 'SI', 'ES');

	$('shipto_country').addEvent('change', function(){
		var value = $('shipto_country').get('value');

		initAjaxFormUI();

		if(value == "US")
		{
			$('shipto_provincelist_row').setStyle('display', 'none');
			$('shipto_address_1_row').setStyle('display', 'none');
			$('shipto_city_row').setStyle('display', 'none');
			$('shipto_region_row').setStyle('display', 'none');
			$('shipto_zip_row').setStyle('display', 'none');
			$('ajaxshippingbtn').setStyle('display', 'none');
		
//				$('singleshippingtxt').set('html','Flat Rate Shipping to the USA: <br />$6.99 (single item)<br />$9.99 (multiple items)');
			$('singleshippingtxt').set('html','Flat Rate Shipping to the USA: $3.99');
			$('singleshipping').set('value','3.99');
			$('multipleshipping').set('value', '3.99');

			$('closeshippingmodal').setStyle('display', 'block');
			updateMasterTotal();
		}
			else if(value == 'GB')
		{
			$('singleshippingtxt').set('text','Flat Rate Shipping to United Kingdom: <br />$19.99 (single item)<br />$23.99 (multiple items)');
			$('singleshipping').set('value','19.99');
			$('multipleshipping').set('value', '23.99');
			
			$('closeshippingmodal').setStyle('display', 'block');
			updateMasterTotal();
		}
		else if(value == 'CA')
		{
			$('shipto_provincelist_row').setStyle('display', 'block');
			$('shipto_address_1_row').setStyle('display', 'none');
			$('shipto_city_row').setStyle('display', 'none');
			$('shipto_region_row').setStyle('display', 'none');
			$('shipto_zip_row').setStyle('display', 'none');
			
			$('singleshippingtxt').set('text','');
			$('singleshipping').set('value','5.49');
			$('multipleshipping').set('value', '5.49');
		}
		else
		{
			$('singleshippingtxt').set('text','');
			$('singleshipping').set('value','0');
			$('multipleshipping').set('value', '0');
			$('cartshippingtotaltxt').set('text', '');
			$('closeshippingmodal').setStyle('display', 'none');
			
			flag = false;
			for (key in euCountries) {
				if (euCountries[key] == value) {
					flag = true;
			  }
			}
			if(flag)
			{
//					alert('part of EU');
				$('singleshippingtxt').set('text','Flat Rate Shipping to Europe: <br />$19.99 (single item)<br />$23.99 (multiple items)');
				$('singleshipping').set('value','19.99');
				$('multipleshipping').set('value', '23.99');
				
				$('closeshippingmodal').setStyle('display', 'block');
				updateMasterTotal();
			}
			else
			{
				var elementsToShow = Array($('shipto_address_1_row'),
											$('shipto_city_row'),
											$('shipto_region_row'),
											$('shipto_zip_row'),
											$('ajaxshippingbtn')
											);
				$$(elementsToShow).setStyle('display', 'block');
				updateMasterTotal();
			}
		
		}
	});
	
	$('shipto_provincelist').addEvent('change', function(){
		var value = $('shipto_provincelist').get('value');
		

		if(value == "ON")
		{
			$('singleshippingtxt').set('text','Flat Rate Shipping to Ontario: $6.99');
			$('singleshipping').set('value','6.99');
			$('multipleshipping').set('value', '6.99');
			$('gstrate').set('value','0.13');
			$('gst').innerHTML = "HST: 13%";
			
		}
		else if(value == "QC")
		{
			$('singleshippingtxt').set('text','Flat Rate Shipping to Quebec: $6.99');
			$('singleshipping').set('value','6.99');
			$('multipleshipping').set('value', '6.99');
			$('gstrate').set('value','0.05');
			$('gst').innerHTML = "GST: 5%";
		}

		else
		{
			$('singleshippingtxt').set('text','Flat Rate Shipping to Canada: $10.49');
			$('singleshipping').set('value','10.49');
			$('multipleshipping').set('value', '10.49');
			
			if ((value == "NL") || (value == "NB"))
			{
				$('gstrate').set('value','0.13');
				$('gst').innerHTML = "HST: 13%";
			}
			else if (value == "NS")
			{
				$('gstrate').set('value','0.15');
				$('gst').innerHTML = "HST: 15%";
			}
			else if (value == "BC")
			{
				$('gstrate').set('value','0.12');
				$('gst').innerHTML = "HST: 12%";
			}			
			else
			{
				$('gstrate').set('value','0.05');
				$('gst').innerHTML = "GST: 5%";
			}
		}

		$('closeshippingmodal').setStyle('display', 'block');
		
		initFormTaxes();
		updateMasterTotal();
	});
	

}
function initAjaxShippingControls()
{
	$('shippingform').getElements('.shippingcontrol').addEvent('click', function(e){
		var e = new Event(e).stop();
		
		$('singleshipping').set('value', this.getParent('li').getElement("input[name='price']").get('value'));
		$('multipleshipping').set('value', this.getParent('li').getElement("input[name='price']").get('value'));
		
		$('closeshippingmodal').setStyle('display', 'block');
		updateMasterTotal();
	});
}
function checkShippingForm()
{
	if(parseInt($('cartqtytotal').get('text')) <= 0)
	{
		$('singleshippingtxt').set('text','Please select at least one product to get a shipping quote.');
		return false;
	}
	return true;
}
function initCouponBox()
{
	$('checkoutcouponbtn').addEvent('click', function(e){
		var e = new Event(e).stop();
		
		$('couponmodal').setStyle('display', 'block');
	});
	
	$('shippingquoteclose').addEvent('click', function(e){
		var e = new Event(e).stop();
		
		$('couponmodal').setStyle('display', 'none');
	});
	
	$('couponcodesubmit').addEvent('click', function(e){
		var e = new Event(e).stop();
		
		var couponCheckRequest = new Request({url: 'checkcoupon.php',
											  onRequest: function(){
																$('couponcodestatus').set('html', '.');
																updatingInterval = setInterval(updateCouponStatus, 700);
															},
											  onSuccess: function(response){
															clearTimeout(updatingInterval);
															if(response == '-1')
															{
																$('couponcodestatus').set('html', 'Invalid Coupon Code Entered');
																$('vars').getElement('input[name=discount_rate_cart]').set('value', 0);
																$('vars').getElement('input[name=custom]').set('value', '');
																$('cartdiscountamt').set('text', '');
															}
															else
															{
																$('couponcodestatus').set('text', 'Coupon valid for ' + response + '% off purchase');
																$('vars').getElement('input[name=discount_rate_cart]').set('value', response);
																$('vars').getElement('input[name=custom]').set('value', $('couponcodeinput').get('value'));
																$('cartdiscountamt').set('html', response + '% coupon');
															}
															updateMasterTotal();
														  }
											});
		couponCheckRequest.send('input=' + $('couponcodeinput').get('value'));
	});
}
var updatingInterval;
function updateCouponStatus(){
	$('couponcodestatus').set('html', ($('couponcodestatus').get('text') + '.').replace('....', '.'));
	
}
function setPayPalVars()
{
	// reset the paypal cart variables
	for(i = 1; i <= $$('.cartpricetxt').length; i++)
	{
		$('vars').getElement('input[name=item_name_'+i+']').set('value', '');
		$('vars').getElement('input[name=amount_'+i+']').set('value', 0);
		$('vars').getElement('input[name=quantity_'+i+']').set('value', 0);
	}
	
	var index = 1;
	if( parseInt($('priceoriginal').getElement('.qty').get('text')) > 0)
	{
		var price = parseFloat($('itemoriginal').getElement('.cartpricetxt').get('text').substr(1));
		var qty = parseInt($('priceoriginal').getElement('.qty').get('text'));
		$('vars').getElement('input[name=item_name_'+index+']').set('value', 'Element 216 - Original Edition');
		$('vars').getElement('input[name=item_number_'+index+']').set('value', $('itemoriginal').getElement('input[name=skuoriginal]').get('value')); 
		$('vars').getElement('input[name=amount_'+index+']').set('value', price);
		$('vars').getElement('input[name=quantity_'+index+']').set('value', qty);
		index++;
	}
	if( parseInt($('priceblack').getElement('.qty').get('text')) > 0)
	{
		var price = parseFloat($('itemblack').getElement('.cartpricetxt').get('text').substr(1));
		var qty = parseInt($('priceblack').getElement('.qty').get('text'));
		$('vars').getElement('input[name=item_name_'+index+']').set('value', 'Element 216 - Black Edition');
		$('vars').getElement('input[name=item_number_'+index+']').set('value', $('itemblack').getElement('input[name=skublack]').get('value')); 
		$('vars').getElement('input[name=amount_'+index+']').set('value', price);
		$('vars').getElement('input[name=quantity_'+index+']').set('value', qty);
		index++;
	}
	if( parseInt($('pricesilver').getElement('.qty').get('text')) > 0)
	{
		var price = parseFloat($('itemsilver').getElement('.cartpricetxt').get('text').substr(1));
		var qty = parseInt($('pricesilver').getElement('.qty').get('text'));
		$('vars').getElement('input[name=item_name_'+index+']').set('value', 'Element 216 - Silver Edition');
		$('vars').getElement('input[name=item_number_'+index+']').set('value', $('itemsilver').getElement('input[name=skusilver]').get('value')); 
		$('vars').getElement('input[name=amount_'+index+']').set('value', price);
		$('vars').getElement('input[name=quantity_'+index+']').set('value', qty);
		index++;
	}
	if( parseInt($('pricegold').getElement('.qty').get('text')) > 0)
	{
		var price = parseFloat($('itemgold').getElement('.cartpricetxt').get('text').substr(1));
		var qty = parseInt($('pricegold').getElement('.qty').get('text'));
		$('vars').getElement('input[name=item_name_'+index+']').set('value', 'Element 216 - Gold Edition');
		$('vars').getElement('input[name=item_number_'+index+']').set('value', $('itemgold').getElement('input[name=skugold]').get('value')); 
		$('vars').getElement('input[name=amount_'+index+']').set('value', price);
		$('vars').getElement('input[name=quantity_'+index+']').set('value', qty);
		index++;
	}


	var shipping = parseFloat($('cartshippingtotaltxt').get('text').substr(1))
	$('vars').getElement('input[name=handling_cart]').set('value', shipping);
	$('vars').getElement('input[name=currency_code]').set('value', $('paypalcurrency').get('value'));
	
	var subtotal = $('cartsubtotaltxt').get('text').substr(1);
	var shipping = $('cartshippingtotaltxt').get('text').substr(1);
	var total = parseFloat(subtotal) + parseFloat(shipping);
	var totaltax = ($('gstrate').get('value') * total) + ($('pstrate').get('value') * total);
	$('vars').getElement('input[name=tax_cart]').set('value', totaltax.toFixed(2));
	
	return false;
//		$('vars').getElement('input[name=tax_2]').set('value', $('pstrate').get('value') * total);
}