// JavaScript Document// pklCart// Function for the shopping cart// Paul Leasure V 0.1/* PKL SHOPPING CART AUG 2008related files: 	pklCart.js, 				cart_functions.php, 				insert_cart_prod_row.php, 				pkl_chkout_head.php				pkl_cart.css*/function filterNum(str) {reg = /^\$|,/g;// remove "$" and ","if( str != null){ return str.replace(reg, ""); }}//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++//+ Jonas Raoni Soares Silva//@ http://jsfromhell.com/number/fmt-money [v1.2]Number.prototype.formatMoney = function(c, d, t){    var n = this, c = isNaN(c = Math.abs(c)) ? 2 : c, d = d == undefined ? "," : d, t = t == undefined ? "." : t, s = n < 0 ? "-" : "",    i = parseInt(n = Math.abs(+n || 0).toFixed(c)) + "", j = (j = i.length) > 3 ? j % 3 : 0;    return s + (j ? i.substr(0, j) + t : "") + i.substr(j).replace(/(\d{3})(?=\d)/g, "$1" + t)    + (c ? d + Math.abs(n - i).toFixed(c).slice(2) : "");};// END:Number.prototype.formatMoney/* Number.formatMoney([floatPoint: Integer = 2], [decimalSep: String = ","], [thousandsSep: String = "."]): *///+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++/*function taxRate(){tr = document.getElementById("cart_tax_rate").value;taxrate = filterNum(tr);taxRate = Number(taxrate);return taxRate;}function ShippingCost(){sh = document.getElementById("cart_shipping_cost").value;ship = filterNum(sh);shippingCost = Number(ship);return shippingCost}function addTaxAndShippingTo(subTotal){  grandTotal = ((subTotal * taxRate() ) + ShippingCost()  )  return grandTotal;}function addToCart(prod_id){			}*/function getCartTotal(){		var numOfRows = $("#num_of_rows").attr("value");		var rowAmount = 0;		var row;		var cartSubTotal = 0;		var shippingCost = $("#cart_shipping").html();		var taxRate = $("#cart_tax_rate").val();						if( $("#num_of_rows").length ){				//  if $("#num_of_rows"), then...					for (row =0; row<=numOfRows; row++) {								if( $("#num_of_rows").length > 0 ){								// if numOfRows exists, then...								var rowAmount = $("#item_total-"+row).text();									n = filterNum(rowAmount);									cartSubTotal += Number(n);								}// if					} //for					if( $("#cart_sub_total").length ){					// if $("#cart_sub_total") exists							$("#cart_sub_total").html( "$"+cartSubTotal.formatMoney(2, ".", ",") );							var tax = Number(taxRate) * Number(cartSubTotal);							$("#cart_tax").html( "$"+tax.formatMoney(2, ".", ",") );							var shipping = Number(shippingCost);							$("#cart_shipping").html( "$"+shipping.formatMoney(2, ".", ",") );							var cartGrandTotal = parseFloat(cartSubTotal+tax+shipping);							$("#cart_grand_total").html( "$"+cartGrandTotal.formatMoney(2, ".", ",") );					}// if				}// if num_of_rows exists}//function getCartTotal() function reloadCartInfo(){// Just re-Load the Cart with AJAX for the auto total and re numbering.//$("#cart-rows-holder").html( '<center><br /><br /><img style="margin:0 4px -4px 0;" width="20px"   src="/_images/_buttons/icon-heart.jpg" alt="error" />Processing, please wait.<br /><br /><br /><img id="nameAjaxActivityFeedback" src="/_images/_buttons/ajax-loader-large.gif" /></center>'  );		$.post( 					"/_pkl_cart/_includes/pkl_cart_insert.php", 					{ status: "redisplay" },					function(data){ 							$("#cart-rows-holder").html(data);							getCartTotal();								}		);// $post	}// functionfunction updateWishlistRow(cart_row,cpi_id,prod_id,action){//var quantity = $('#cartRowQty-'+cart_row).val();// This is a select//if( quantity == "undefined" || quantity == null ) var quantity = $('#cartRowQty-'+cart_row).text();var priceReg = $("#price_reg-"+cart_row).text();var priceDisc = $("#price_disc-"+cart_row).text();var itemTotal = $("#item_total-"+cart_row).text();var cartRowInfo = [];//ACTIONcartRowInfo[0] = action;// CART ROWcartRowInfo[1] = cart_row;// CPI_IDcartRowInfo[3] = cpi_id;// QUANTITYif( $('#cartRowQty-'+cart_row).val() != null && $('#cartRowQty-'+cart_row).val() !=  "" ){					cartRowInfo[6] =   $('#cartRowQty-'+cart_row).val();			}else{					cartRowInfo[6] =   $('#cartRowQty-'+cart_row).text();			}	// CART ROW TOTALcartRowInfo[5] = (cartRowInfo[6] * filterNum(priceDisc) );// PROD IDcartRowInfo[7] = prod_id;// dB TABLE 'cust_basket_pkl'  ROW IDcartRowInfo[8] = $("#basket-id-for-row-"+cart_row).attr("value");  // //////////////////////////////////////  UPDATE /////////////////////////////////////////////if(action=="update"){ 	          // PROD TYPE		  if( $("#cartProdType-"+cart_row).val() != null && $("#cartProdType-"+cart_row).val() !=  "" ){					cartRowInfo[2] = 	$("#cartProdType-"+cart_row).val();			}else{					cartRowInfo[2] =  $("#cartProdType-"+cart_row).attr("value");			}			// PROD SIZE		 if( $("#cartRowSize-"+cart_row).val() != null && $("#cartRowSize-"+cart_row).val() != "" ){					cartRowInfo[4] = 	$("#cartRowSize-"+cart_row).val();			}else{					cartRowInfo[4] =  $("#cartRowSize-"+cart_row).text();			}}//if(action=="update")// //////////////////////////////////////  REMOVE /////////////////////////////////////////////if(action=="remove") {	quantity = 0;	cartRowInfo[0] = action;	cartRowInfo[1] = cart_row;	cartRowInfo[6] = quantity;	cartRowInfo[7] = prod_id;	var numRows = parseInt( $("#num_of_rows").attr("value") ) - 1;	$("#num_of_rows").attr("value", numRows ) ;}//if(action=="remove")// AJAX FEEDBACK ANIMATION$("#cartRow-"+cart_row).html( '<div style="height:130px;clear:both;border-bottom:1px solid #cccccc;"><center><br /><img style="margin:0 4px -4px 0;" width="16px"   src="/_images/_buttons/icon-heart.jpg" alt="error" />Processing, please wait.<br /><br /><img id="nameAjaxActivityFeedback" height="16px" src="/_images/_buttons/ajax-loader-large.gif" /></center></div>'  );// AJAX POST  	$.post( 				"_wishlist/_includes/insert_cart_prod_row.php",				{ cartRowInfo: cartRowInfo.toString() },				function(data){						$("#cartRow-"+cart_row).html(data);					reloadCartInfo();				}); }//function updateCartRow(cart_row,cpi_id,prod_id,action) function useAjax01(postVars, targetDiv, processFile, cart_row) {// create an ajax function to go get the products in this cat and display them in the main page  var XMLHttpRequestObject = false;  if (window.XMLHttpRequest) {	XMLHttpRequestObject = new XMLHttpRequest();  } else if (window.ActiveXObject) {	XMLHttpRequestObject = new 	ActiveXObject("Microsoft.XMLHTTP");  }  if(XMLHttpRequestObject)   {	//--BEGIN:------for fade effect SEE pkl_effects.js	if(cart_row){	    // progressIndicator("on", cart_row);	}	//--END:------for fade effect SEE pkl_effects.js	XMLHttpRequestObject.open("POST", processFile);     XMLHttpRequestObject.setRequestHeader('Content-Type',             'application/x-www-form-urlencoded');  	XMLHttpRequestObject.onreadystatechange = 		function() 				{ 								if (XMLHttpRequestObject.readyState == 4 && 						XMLHttpRequestObject.status == 200) 						{ 												alert( "AJAX Target Div: "+ targetDiv  );						document.getElementById(targetDiv).innerHTML =						XMLHttpRequestObject.responseText;						 getCartTotal();						 						// document.location.href = "/shopping-cart" ;						// temo off  PKL  1-6-10  updateCartBox();						//progressIndicator("off");						}				} //function	XMLHttpRequestObject.send(postVars);   } }// function useAjax01