//nopERcart Version 2010-01-12 -- readable copy at http://ereimer.net/nopercart.htm
//(c) 2007,2010 NopDesign.com, Stefko, Eugene Reimer.
if(typeof strSorry=="undefined"){strSorry="I'm Sorry, your cart is full;  please proceed to checkout.";strAdded="Added to your shopping cart:";strAddedQuantity="Quantity: ";strAddedProduct="Product:  ";strRemove="Click 'OK' to remove this product from your shopping cart.";strTLabel="Image";strILabel="Product ID&nbsp;&nbsp;&nbsp";strDLabel="Product Name";strQLabel="Qty";strPLabel="Price";strWLabel="Weight";strZLabel="Size";strALabel="Amount";strRLabel="&nbsp;";strRButton="Remove from Cart";strMButton="More Info";strLButton="Less Info";strSUB="SUBTOTAL";strWTSZTOT="PACKAGE ATTRIBUTES";strSHIP="SHIPPING";strTAX="TAX";strTOT="TOTAL";strErrQty="Invalid Quantity.";strNewQty="Please enter new quantity:";strSHIPPINGZONE="SHIPPING<BR>ZONE";strTAXABLEREGION="TAXABLE<BR>REGION";strEA="/ea";strCartEmpty="Your cart is empty";strAsMultiple="as multiple packages:";strAsSingle="as-one:";strBroken="our shipping-calculator is broken; please inform our webmaster";strTotalNaN="Your browser's javascript appears to be broken; another browser may help; a reboot may help; if problem persists, please inform our webmaster";strINCLUDEDINTOTAL="Included in Total";Language="en";}
OutputItemId="ID_";OutputItemQuantity="QUANTITY_";OutputItemPrice="PRICE_";OutputItemName="NAME_";OutputItemWeight="WEIGHT_";OutputItemLength="LENGTH_";OutputItemWidth="WIDTH_";OutputItemHeight="HEIGHT_";OutputOrderZone="SHIPZONE";OutputOrderRegion="TAXREGION";OutputOrderSubtotal="SUBTOTAL";OutputOrderShipping="SHIPPING";OutputOrderTax="TAX";OutputOrderTotal="TOTAL";AppendItemNumToOutput=true;CartID="";Debug=0;function DEBUG(str){if(Debug)alert(str);}
function DEBUG1(str){if(Debug&1)alert(str);}
function DEBUG2(str){if(Debug&2)alert(str);}
function DEBUG4(str){if(Debug&4)alert(str);}
function DEBUG8(str){if(Debug&8)alert(str);}
function DEBUG16(str){if(Debug&16)alert(str);}
if(window.location.href.substring(0,5)=="file:")Debug|=256;else Debug=0;MoneySymbol="$";DisplayPopupOnAdd=false;DisplayPopupOnRemove=false;DisplayChangeQty=false;DisplayImgColumn="";ImgPrefix="shopImage-";DisplayWtColumn=false;DisplaySzColumn=false;DynamicWtSzColumns=3;WTUNITS="g";SZUNITS="cm";WTROUND=1;SZROUND=10;MoneyPLACES=2;DisplaySubtotalRow=1;DisplayPkgAttrRow=true;DisplayShippingRow=true;DisplayRegionColumns=1;DisplayTaxRow=false;DisplayTaxIncluded=false;ShipTaxAsItems=false;TaxNames=[];TaxRates=[];TaxesByID={};TaxesByRegion=[];RegionTable=[];RegionFromZone=[];RegionDefault=0;RegionPrompt="Please indicate whether you are a resident of Manitoba for tax purposes, before continuing";RegionSuppressible=false;DefaultDonation=25;MinimumDonation=3.50;MinimumDonationPrompt="We're sorry but we're unable to accept a donation of less than 3.50 via PayPal; we accept arbitrarily small donations via CanadaHelps";MinimumOrder=0.01;MinimumOrderPrompt="Your cart is empty; please order something before checking out.";PrefDonation="nDO";SameCountry=0;gcCurrency="USD";NotesOnItem=true;PaymentProcessor="pp";PaymentProcessor2="cgi";AllInOne=false;ShipTable=[];ShipTable[0]=new ShipEntry("Within Canada",[]);ShipTable[1]=new ShipEntry("To USA",[]);ShipTable[2]=new ShipEntry("To International",[]);ShipTable[0].pkginfo[0]=new PkgClass(100,new Size(33.6,23.4,1.8),1.22,0.00,1,"");ShipTable[0].pkginfo[1]=new PkgClass(200,new Size(33.6,23.4,1.8),2.00,0.00,1,"");ShipTable[0].pkginfo[2]=new PkgClass(500,new Size(33.6,23.4,1.8),3.25,0.00,1,"*");ShipTable[0].pkginfo[3]=new PkgClass(1000,new Size(33.6,23.4,7.6),11.47,0.00,1,'');ShipTable[0].pkginfo[4]=new PkgClass(1500,new Size(33.6,23.4,11.4),12.32,0.00,1,'');ShipTable[0].pkginfo[5]=new PkgClass(2000,new Size(33.6,23.4,15.3),12.99,0.00,1,'');ShipTable[0].pkginfo[6]=new PkgClass(2500,new Size(33.6,23.4,19.1),13.42,0.00,1,'');ShipTable[0].pkginfo[7]=new PkgClass(3000,new Size(33.6,23.4,22.9),14.08,0.00,1,'');ShipTable[0].pkginfo[8]=new PkgClass(3500,new Size(33.6,23.4,26.7),14.73,0.00,1,'');ShipTable[0].pkginfo[9]=new PkgClass(4000,new Size(33.6,23.4,30.5),15.39,0.00,1,'');ShipTable[0].pkginfo[10]=new PkgClass(5000,new Size(33.6,23.4,38.2),16.71,0.00,1,'');ShipTable[0].pkginfo[11]=new PkgClass(6000,new Size(33.6,23.4,45.8),17.95,0.00,1,'');ShipTable[0].pkginfo[12]=new PkgClass(7000,new Size(33.6,23.4,53.4),19.20,0.00,1,'');ShipTable[0].pkginfo[13]=new PkgClass(8000,new Size(33.6,23.4,61.1),20.45,0.00,1,'');ShipTable[0].pkginfo[14]=new PkgClass(10000,new Size(33.6,23.4,76.3),22.95,0.00,1,'');ShipTable[0].pkginfo[15]=new PkgClass(12000,new Size(33.6,23.4,91.6),25.45,0.00,1,'');ShipTable[0].pkginfo[16]=new PkgClass(15000,new Size(33.6,23.4,114.5),36.78,0.00,1,'');ShipTable[0].pkginfo[17]=new PkgClass(20000,new Size(33.6,23.4,152.6),43.03,0.00,1,'');ShipTable[0].pkginfo[18]=new PkgClass(25000,new Size(33.6,23.4,160.0),48.41,0.00,1,'');ShipTable[0].pkginfo[19]=new PkgClass(30000,new Size(33.6,23.4,160.0),53.80,0.00,1,'');ShipTable[0].pkginfo[20]=new PkgClass(60000,new Size(33.6,23.4,320.0),18.60,0.775,500,'');ShipTable[0].pkginfo[21]=new PkgClass(90000,new Size(33.6,23.4,480.0),27.89,0.775,500,'');ShipTable[1].pkginfo[0]=new PkgClass(100,new Size(33.6,23.4,1.8),2.00,0.00,1,"");ShipTable[1].pkginfo[1]=new PkgClass(200,new Size(33.6,23.4,1.8),3.50,0.00,1,"");ShipTable[1].pkginfo[2]=new PkgClass(250,new Size(33.6,23.4,1.8),4.73,0.00,1,"");ShipTable[1].pkginfo[3]=new PkgClass(500,new Size(33.6,23.4,1.8),7.00,0.00,1,"");ShipTable[1].pkginfo[4]=new PkgClass(1000,new Size(33.6,23.4,33.0),11.54,0.00,1,"*");ShipTable[1].pkginfo[5]=new PkgClass(1500,new Size(33.6,23.4,11.4),30.39,0.00,1,'');ShipTable[1].pkginfo[6]=new PkgClass(2000,new Size(33.6,23.4,15.3),32.23,0.00,1,'');ShipTable[1].pkginfo[7]=new PkgClass(2500,new Size(33.6,23.4,19.1),34.26,0.00,1,'');ShipTable[1].pkginfo[8]=new PkgClass(3000,new Size(33.6,23.4,22.9),38.24,0.00,1,'');ShipTable[1].pkginfo[9]=new PkgClass(3500,new Size(33.6,23.4,26.7),40.58,0.00,1,'');ShipTable[1].pkginfo[10]=new PkgClass(4000,new Size(33.6,23.4,30.5),41.50,0.00,1,'');ShipTable[1].pkginfo[11]=new PkgClass(5000,new Size(33.6,23.4,38.2),46.23,0.00,1,'');ShipTable[1].pkginfo[12]=new PkgClass(6000,new Size(33.6,23.4,45.8),52.24,0.00,1,'');ShipTable[1].pkginfo[13]=new PkgClass(7000,new Size(33.6,23.4,53.4),57.41,0.00,1,'');ShipTable[1].pkginfo[14]=new PkgClass(8000,new Size(33.6,23.4,61.1),62.80,0.00,1,'');ShipTable[1].pkginfo[15]=new PkgClass(10000,new Size(33.6,23.4,76.3),72.38,0.00,1,'');ShipTable[1].pkginfo[16]=new PkgClass(12000,new Size(33.6,23.4,91.6),80.37,0.00,1,'');ShipTable[1].pkginfo[17]=new PkgClass(15000,new Size(33.6,23.4,114.5),98.38,0.00,1,'');ShipTable[1].pkginfo[18]=new PkgClass(20000,new Size(33.6,23.4,152.6),130.49,0.00,1,'');ShipTable[1].pkginfo[19]=new PkgClass(25000,new Size(33.6,23.4,160.0),160.82,0.00,1,'');ShipTable[1].pkginfo[20]=new PkgClass(30000,new Size(33.6,23.4,160.0),175.86,0.00,1,'');ShipTable[1].pkginfo[21]=new PkgClass(60000,new Size(33.6,23.4,320.0),41.48,2.661,500,'');ShipTable[1].pkginfo[22]=new PkgClass(90000,new Size(33.6,23.4,480.0),62.23,2.661,500,'');ShipTable[2].pkginfo[0]=new PkgClass(100,new Size(33.6,23.4,1.8),4.00,0.00,1,"");ShipTable[2].pkginfo[1]=new PkgClass(200,new Size(33.6,23.4,1.8),7.00,0.00,1,"");ShipTable[2].pkginfo[2]=new PkgClass(250,new Size(33.6,23.4,1.8),8.95,0.00,1,"");ShipTable[2].pkginfo[3]=new PkgClass(500,new Size(33.6,23.4,1.8),14.00,0.00,1,"");ShipTable[2].pkginfo[4]=new PkgClass(1000,new Size(33.6,23.4,33.0),15.19,0.00,1,"");ShipTable[2].pkginfo[5]=new PkgClass(2000,new Size(33.6,23.4,33.0),22.26,0.00,1,"*");ShipTable[2].pkginfo[6]=new PkgClass(2500,new Size(33.6,23.4,19.1),44.17,0.00,1,'');ShipTable[2].pkginfo[7]=new PkgClass(3000,new Size(33.6,23.4,22.9),48.18,0.00,1,'');ShipTable[2].pkginfo[8]=new PkgClass(3500,new Size(33.6,23.4,26.7),53.82,0.00,1,'');ShipTable[2].pkginfo[9]=new PkgClass(4000,new Size(33.6,23.4,30.5),60.94,0.00,1,'');ShipTable[2].pkginfo[10]=new PkgClass(5000,new Size(33.6,23.4,38.2),74.37,0.00,1,'');ShipTable[2].pkginfo[11]=new PkgClass(6000,new Size(33.6,23.4,45.8),80.67,0.00,1,'');ShipTable[2].pkginfo[12]=new PkgClass(7000,new Size(33.6,23.4,53.4),86.98,0.00,1,'');ShipTable[2].pkginfo[13]=new PkgClass(8000,new Size(33.6,23.4,61.1),92.68,0.00,1,'');ShipTable[2].pkginfo[14]=new PkgClass(10000,new Size(33.6,23.4,76.3),102.43,0.00,1,'');ShipTable[2].pkginfo[15]=new PkgClass(20000,new Size(33.6,23.4,152.6),55.14,4.042,500,'');ShipTable[2].pkginfo[16]=new PkgClass(30000,new Size(33.6,23.4,228.9),82.71,4.042,500,'');ShipTable[2].pkginfo[17]=new PkgClass(40000,new Size(33.6,23.4,305.3),110.28,4.042,500,'');ShipTable[2].pkginfo[18]=new PkgClass(50000,new Size(33.6,23.4,381.6),137.85,4.042,500,'');ShipTable[2].pkginfo[19]=new PkgClass(60000,new Size(33.6,23.4,457.9),165.42,4.042,500,'');ShipTable[2].pkginfo[20]=new PkgClass(70000,new Size(33.6,23.4,534.2),192.99,4.042,500,'');ShipTable[2].pkginfo[21]=new PkgClass(80000,new Size(33.6,23.4,610.5),220.56,4.042,500,'');ShipTable[2].pkginfo[22]=new PkgClass(90000,new Size(33.6,23.4,686.8),248.13,4.042,500,'');ZoneDefault=2;ZonePrompt="";ShipTaxRate=0.05;ShipTaxName="";HandlingChargePerOrder=0.50;HandlingChargePerExtraPackage=0.50;PackTable=[];itmca=new Size(32.0,23.00,0.3);itmbk=new Size(23.0,15.00,1.2);itmdv=new Size(15.0,13.00,0.6);itmlg=new Size(11.5,8.00,1.8);itmsm=new Size(8.0,5.75,1.8);PKG1=new Size(32.0,23.00,1.8);packTo500g=[];packTo500g[0]=new PackingRule([itmsm],[2],itmlg);packTo500g[1]=new PackingRule([itmbk,itmdv,itmlg],[1,3,1],PKG1);packTo500g[2]=new PackingRule([itmbk,itmdv,itmlg],[1,1,4],PKG1);packTo500g[3]=new PackingRule([itmdv,itmlg],[6,2],PKG1);packTo500g[4]=new PackingRule([itmdv,itmlg],[3,5],PKG1);packTo500g[5]=new PackingRule([itmlg],[8],PKG1);packTo500g[6]=new PackingRule([itmbk,itmdv,itmca],[1,1,1],PKG1);packTo500g[7]=new PackingRule([itmdv,itmca],[4,2],PKG1);packTo500g[8]=new PackingRule([itmdv,itmca],[2,3],PKG1);packTo500g[8]=new PackingRule([itmdv,itmca],[1,4],PKG1);PackTable[0]=packTo500g;PackTable[1]=packTo500g;PackTable[2]=packTo500g;var PkgQueue=null;var PkgAsOne=null;var sComputeShippingNote="";var gVat=0;function PrefEQ(A,B){return A.substring(0,B.length)==B;}
function NumberZ(s){var N=Number(s);if(isNaN(N))N=0;return(N);}
function Integer(s){return Math.round(NumberZ(s));}
moneyEps=Math.pow(10,-MoneyPLACES);MoneyROUND_FRA=Math.pow(10,+MoneyPLACES);MoneyROUND_NOF=Math.pow(10,-MoneyPLACES);function CentsFRA(f){return Math.round(f*MoneyROUND_FRA)/MoneyROUND_FRA;}
function CentsNOF(f){return Math.round(f/MoneyROUND_NOF)*MoneyROUND_NOF;}
Cents=(MoneyPLACES>0?CentsFRA:CentsNOF);function WtRndUP(x){return Math.ceil(x*WTROUND)/WTROUND;}
function WtRnd(x){return Math.round(x*WTROUND)/WTROUND;}
function SzRnd(x){return Math.round(x*SZROUND)/SZROUND;}
function Element(E,S){for(var e=S.length;e--;)if(E==S[e])return true;return false;}
while(PackTable.length<ShipTable.length)PackTable.push([]);if(RegionFromZone.length&&RegionFromZone.length<ShipTable.length)DEBUG("RegionFromZone must have as many entries as ShipTable");X=[];for(Z=ShipTable.length;Z--;)X[Z]=false;for(Z=RegionFromZone.length;Z--;)X[Z]=(RegionFromZone[Z].length==1);RegionFromZoneOvA=X;X=0;Z=RegionFromZone.length;if(Z>0){X=1;while(Z--)X&=RegionFromZoneOvA[Z];}RegionFromZoneOverrides=X;if(RegionFromZone.length){X=[];for(R=0;R<RegionTable.length;++R)X.push(R);while(RegionFromZone.length<ShipTable.length)RegionFromZone.push(X);}
if(TaxNames.length>=2)while(TaxNames.length<TaxRates.length)TaxNames.push("UnNamedTax");while(TaxesByRegion.length<RegionTable.length)TaxesByRegion.push([]);RegionsUsed=(RegionTable.length>=2);X=[];for(R=RegionTable.length;R--;)X.push(0);for(RZ=RegionFromZone,Z=RZ.length;Z--;){E=RZ[Z];for(K=E.length;K--;)++X[E[K]];}
Y=[];for(R=X.length;R--;)Y[R]=(X[R]==1);ZoneFromRegionOvA=Y;function ShipEntry(zone,pkginfo){this.zone=zone;this.pkginfo=pkginfo;}
function PkgClass(weight,size,costfixed,costperwtunit,wtunit,flag){this.weight=weight;this.size=size;this.costfixed=costfixed;this.costperwtunit=costperwtunit;this.wtunit=wtunit;this.flag=flag;}
function PackingRule(itmsizeinfo,itmqtyinfo,pkgsize){this.itmsizeinfo=itmsizeinfo;this.itmqtyinfo=itmqtyinfo;this.pkgsize=pkgsize;}
function Size(Length,width,height){this.Length=NumberZ(Length);this.width=NumberZ(width);this.height=NumberZ(height);}
function Qszwt(qty,size,weighteach){this.qty=Integer(qty);this.size=size;this.weight=NumberZ(weighteach)*qty;this.wt=[];for(var w=0;w<qty;++w)this.wt[w]=NumberZ(weighteach);}
function SizeStr(size){return(size.Length+"x"+size.width+"x"+size.height);}
function SizeVolume(size){return(size.Length*size.width*size.height);}
function SizeEQ(size1,size2){return(size1.Length==size2.Length&&size1.width==size2.width&&size1.height==size2.height);}
function InitPkgQueue(){PkgQueue=[];}
function AddPkgQueueEntry(qty,size,weighteach){for(var i=0;i<PkgQueue.length;++i)if(SizeEQ(PkgQueue[i].size,size)){PkgQueue[i].qty+=Integer(qty);PkgQueue[i].weight+=NumberZ(weighteach)*Integer(qty);for(var w=0;w<qty;++w)PkgQueue[i].wt.push(NumberZ(weighteach));return;}
PkgQueue.push(new Qszwt(qty,size,weighteach));}
function RemovePkgQueueEntry(i){PkgQueue.splice(i,1);}
function ShowPkgQueue(){var str="";for(var i=0;i<PkgQueue.length;++i){str+="qty:"+PkgQueue[i].qty+"; sz:"+SizeStr(PkgQueue[i].size)+"; wt:"+Math.round(PkgQueue[i].weight)+" [";for(var w=0;w<PkgQueue[i].qty;++w)str+=Math.round(PkgQueue[i].wt[w])+" ";str+="]\n";}
return str;}
function PickAndApplyPackingRule(PackingRule){var SZ=null;var P=null;var bestGoodness=0;for(var i=0;i<PkgQueue.length;++i){var sz=PkgQueue[i].size,p=null,ct=0;for(var r=0;r<PackingRule.length;++r)for(var e=0;e<PackingRule[r].itmsizeinfo.length;++e)if(SizeEQ(PackingRule[r].itmsizeinfo[e],sz)){p=r;++ct;break;}
if(ct==1){SZ=sz;P=p;break;}
}
if(SZ==null){var minRV=99999999;for(var r=0;r<PackingRule.length;++r){var RV=SizeVolume(PackingRule[r].pkgsize);if(RV<minRV)minRV=RV;}
for(var r=0;r<PackingRule.length;++r){var MV=0;for(var e=0;e<PackingRule[r].itmsizeinfo.length;++e)for(var i=0;i<PkgQueue.length;++i)if(SizeEQ(PackingRule[r].itmsizeinfo[e],PkgQueue[i].size)){MV+=SizeVolume(PkgQueue[i].size)*Math.min(PkgQueue[i].qty,PackingRule[r].itmqtyinfo[e]);}
var RV=SizeVolume(PackingRule[r].pkgsize),relRV=RV/minRV;var VE=MV/RV;var g=VE/relRV;if(g>bestGoodness){P=r;bestGoodness=g;}
}
}
if(P==null)return false;if(SZ!=null)sRule="PackingRule["+P+"] is ONLY rule for sz:"+SizeStr(SZ)+"\n";else sRule="PackingRule["+P+"] is BEST g:"+Math.round(bestGoodness*1000)/1000+"\n";sRules+=sRule;var wei=0;for(var e=0;e<PackingRule[P].itmsizeinfo.length;++e)for(var i=0;i<PkgQueue.length;++i)if(SizeEQ(PackingRule[P].itmsizeinfo[e],PkgQueue[i].size)){var Q=Math.min(PkgQueue[i].qty,PackingRule[P].itmqtyinfo[e]);for(w=0;w<Q;++w){wei+=PkgQueue[i].wt[w];PkgQueue[i].weight-=PkgQueue[i].wt[w];}
PkgQueue[i].qty-=Q;if(PkgQueue[i].qty==0)RemovePkgQueueEntry(i);else PkgQueue[i].wt.splice(0,Q);}
AddPkgQueueEntry(1,PackingRule[P].pkgsize,wei);return true;}
sRule="";sRules="";function ComputePackageSize(ZoneParam){DEBUG2(ShowPkgQueue());var PR=PackTable[ZoneParam];if(PR.length>0){sRules="Zone:"+ShipTable[ZoneParam].zone+"\n";while((PkgQueue.length>1||(PkgQueue.length==1&&PkgQueue[0].qty>1))&&PickAndApplyPackingRule(PR))DEBUG2(sRule+ShowPkgQueue());DEBUG1(sRules+"Packages:\n"+ShowPkgQueue());}
var thk=0,len=0,wid=0,wei=0;for(var i=0;i<PkgQueue.length;++i){if(PkgQueue[i].size.Length>len)len=PkgQueue[i].size.Length;if(PkgQueue[i].size.width>wid)wid=PkgQueue[i].size.width;thk+=PkgQueue[i].size.height*PkgQueue[i].qty;wei+=PkgQueue[i].weight;}
PkgAsOne=new Qszwt(1,new Size(len,wid,SzRnd(thk)),WtRndUP(wei));}
function ComputeShipping(ZoneParam){sComputeShippingNote="";if(PkgAsOne.weight==0&&PkgAsOne.size.height==0)return 0.00;var Ship=ShipTable[ZoneParam].pkginfo;function PricePkg(Ship,weight,height){for(var c=0;c<Ship.length;++c)if(weight<=Ship[c].weight&&height<=Ship[c].size.height)
{return Cents(Ship[c].costfixed+Ship[c].costperwtunit*Math.ceil(weight/Ship[c].wtunit));}
return 99999.99;}
var asOne=PricePkg(Ship,PkgAsOne.weight,PkgAsOne.size.height);var asMult=99999.99,FC=null,iN=0;for(var c=0;c<Ship.length;++c)if(Ship[c].flag=="*")FC=c;if(FC!=null){var maxHt=Ship[FC].size.height;var maxWt=Ship[FC].weight;var accHt=0,accWt=0,sW="";function R(f){return " "+Math.ceil(f)+WTUNITS;}
asMult=0;for(var i=PkgQueue.length;i--;)for(var j=PkgQueue[i].qty;j--;){var Wt=PkgQueue[i].wt[j];var Ht=PkgQueue[i].size.height;if(Wt>maxWt||Ht>maxHt){asMult=99999.99;break;}
if(accWt+Wt>maxWt||accHt+Ht>maxHt){asMult+=PricePkg(Ship,accWt,accHt);++iN;sW+=R(accWt);accHt=0;accWt=0;}
accWt+=Wt;accHt+=Ht;}
if(accWt+accHt){asMult+=PricePkg(Ship,accWt,accHt);++iN;sW+=R(accWt);}
}
var asOneVat=Cents(asOne*ShipTaxRate);var asMultVat=Cents(asMult*ShipTaxRate);asOne+=asOneVat+HandlingChargePerOrder;asMult+=asMultVat+HandlingChargePerOrder+(iN-1)*HandlingChargePerExtraPackage;var cost;if(asOne<=asMult){cost=asOne;gVat=asOneVat;}else{cost=asMult;gVat=asMultVat;if(strAsMultiple)sComputeShippingNote="("+strAsMultiple+sW+(strAsSingle?"; "+strAsSingle+MoneySymbol+moneyFormat(asOne):"")+")";}
if(cost>=99999){sComputeShippingNote=strBroken;return 99999.99;}
return cost;}
function NewZone(ZoneParam){SetCookie("ZoneSelected",ZoneParam,null,"/");var RegionCookie=iGetCookie("RegionSelected");if(RegionCookie!=null&&RegionFromZone.length&&!Element(RegionCookie,RegionFromZone[ZoneParam]))DeleteCookie("RegionSelected","/");location.href=location.href;}
function NewRegion(RegionParam){SetCookie("RegionSelected",RegionParam,null,"/");var ZoneCookie=iGetCookie("ZoneSelected");if(ZoneCookie!=null&&RegionFromZone.length&&!Element(RegionParam,RegionFromZone[ZoneCookie]))DeleteCookie("ZoneSelected","/");location.href=location.href;}
function MoreLessInfo(){var MoreState=iGetCookie("MoreState");if(MoreState==null)MoreState=(DisplayWtColumn?1:0)*2+(DisplaySzColumn?1:0);MoreState=((MoreState&DynamicWtSzColumns)==DynamicWtSzColumns?0:DynamicWtSzColumns);SetCookie("MoreState",MoreState,null,"/");location.href=location.href;}
function NumberV(checkString){var sNewString="",K=0;for(var i=0;i<checkString.length;++i){ch=checkString.substring(i,i+1);if(ch>="0"&&ch<="9")sNewString+=ch;else if(ch=="."&&++K==1)sNewString+=ch;}
return(NumberZ(sNewString));}
function CKquantity(checkString){var N=Integer(NumberV(checkString));if(N==0)N=1;return(""+N);}
function CKprice(checkString){var N=Cents(NumberV(checkString));if(N==0)N=DefaultDonation;else if(N<MinimumDonation){N=MinimumDonation;alert(MinimumDonationPrompt);}
return(moneyFormat(N));}
function AddToCart(thisForm){var iNumberOrdered=0;var bAlreadyInCart=false;var notice="";var ELE,ATR;ELE=thisForm;sID="";if(ATR=ELE._ID||ELE.ID||ELE.ID_NUM)sID=ATR.value;sQUANTITY="1";if(ATR=ELE._QUANTITY||ELE.QUANTITY)sQUANTITY=ATR.value;sPRICE="0.00";if(ATR=ELE._PRICE||ELE.PRICE)sPRICE=ATR.value;sNAME="";if(ATR=ELE._NAME||ELE.NAME)sNAME=ATR.value;sWEIGHT="0";if(ATR=ELE._WEIGHT||ELE.WEIGHT)sWEIGHT=ATR.value;sLENGTH="0";if(ATR=ELE._LENGTH||ELE.LENGTH)sLENGTH=ATR.value;sWIDTH="0";if(ATR=ELE._WIDTH||ELE.WIDTH)sWIDTH=ATR.value;sHEIGHT="0";if(ATR=ELE._HEIGHT||ELE.HEIGHT)sHEIGHT=ATR.value;sPROMPT="";for(var i=0;i<thisForm.elements.length;++i){ELE=thisForm.elements[i];if(ELE.type!="hidden")continue;if(!ELE.getAttribute)continue;if(ATR=ELE.getAttribute("_ID")||ELE.getAttribute("ID_NUM"))sID=ATR;if(ATR=ELE.getAttribute("_QUANTITY")||ELE.getAttribute("QUANTITY"))sQUANTITY=ATR;if(ATR=ELE.getAttribute("_PRICE")||ELE.getAttribute("PRICE"))sPRICE=ATR;if(ATR=ELE.getAttribute("_NAME"))sNAME=ATR;if(ATR=ELE.getAttribute("_WEIGHT")||ELE.getAttribute("WEIGHT"))sWEIGHT=ATR;if(ATR=ELE.getAttribute("_LENGTH")||ELE.getAttribute("LENGTH"))sLENGTH=ATR;if(ATR=ELE.getAttribute("_WIDTH"))sWIDTH=ATR;if(ATR=ELE.getAttribute("_HEIGHT"))sHEIGHT=ATR;}
for(var N=0;N<=2;++N)for(var n=0;n<=9;++n){var selname=["ADDITIONALINFO","USERCHOICE","_USERCHOICE"][N]+(n?n:"");var selector=thisForm[selname];if(selector==null)continue;if(typeof selector.selectedIndex=="undefined"){for(var i=0;i<selector.length;++i)if(selector[i].checked)ELE=selector[i];}else{ELE=selector[selector.selectedIndex];}
function NewStr(OLD,NEW){return(NEW.substring(0,1)=="+"?OLD+NEW.substring(1,NEW.length):NEW);}
function NewNum(OLD,NEW){return ""+(NEW.substring(0,1)=="+"?NumberZ(OLD)+NumberZ(NEW.substring(1,NEW.length)):NEW);}
if(!ELE.getAttribute)if(ATR=ELE.value)sNAME+=" "+ATR;if(!ELE.getAttribute)continue;if(ATR=ELE.getAttribute("_ID")||ELE.getAttribute("ID"))sID=NewStr(sID,ATR);else if(ATR=ELE.getAttribute("ID_NUM"))sID=NewStr(sID,ATR);if(ATR=ELE.getAttribute("_QUANTITY")||ELE.getAttribute("QUANTITY"))sQUANTITY=NewNum(sQUANTITY,ATR);if(ATR=ELE.getAttribute("_PRICE")||ELE.getAttribute("PRICE"))sPRICE=NewNum(sPRICE,ATR);if(ATR=ELE.getAttribute("_NAME"))sNAME=NewStr(sNAME,ATR);else if(ATR=ELE.value)sNAME+=" "+ATR;else if(ELE.type!="radio"&&(ATR=ELE.getAttribute("NAME")))sNAME=NewStr(sNAME,ATR);if(ATR=ELE.getAttribute("_WEIGHT")||ELE.getAttribute("WEIGHT"))sWEIGHT=NewNum(sWEIGHT,ATR);if(ATR=ELE.getAttribute("_LENGTH")||ELE.getAttribute("LENGTH"))sLENGTH=NewNum(sLENGTH,ATR);if(ATR=ELE.getAttribute("_WIDTH")||ELE.getAttribute("WIDTH"))sWIDTH=NewNum(sWIDTH,ATR);if(ATR=ELE.getAttribute("_HEIGHT")||ELE.getAttribute("HEIGHT"))sHEIGHT=NewNum(sHEIGHT,ATR);if(ATR=ELE.getAttribute("_PROMPT")||ELE.getAttribute("PROMPT"))sPROMPT+=(sPROMPT?"; ":"")+ATR;}
if(sID+sNAME==""&&sPROMPT=="")sPrompt="Please select an option";if(sPROMPT!=""){alert(sPROMPT);return false;}
if(PrefEQ(sID,PrefDonation))sPRICE=CKprice(sPRICE);if(ATR=thisForm._USERTEXT||thisForm.USERTEXT){if(ATR.value)sNAME+="; "+ATR.value;}
else if(ATR=thisForm.USERENTRY){if(ATR.value)sNAME+="; "+ATR.value;}
iNumberOrdered=iGetCookie("NumberOrdered",0);for(var i=1;i<=iNumberOrdered;++i){GetRow(i);if(fields[0]==sID&&fields[3]==sNAME&&(fields[2]==sPRICE||PrefEQ(sID,PrefDonation))){bAlreadyInCart=true;if(PrefEQ(sID,PrefDonation)){dbUpdatedOrder=sID+"|"+sQUANTITY+"|"+(Number(sPRICE)+Number(fields[2]))+"|"+sNAME+"|"+sWEIGHT+"|"+sLENGTH+"|"+sWIDTH+"|"+sHEIGHT;}else{dbUpdatedOrder=sID+"|"+(Integer(sQUANTITY)+Integer(fields[1]))+"|"+sPRICE+"|"+sNAME+"|"+sWEIGHT+"|"+sLENGTH+"|"+sWIDTH+"|"+sHEIGHT;}
sNewOrder="Order."+i;DeleteCookie(sNewOrder,"/");SetCookie(sNewOrder,dbUpdatedOrder,null,"/");notice=strAdded+"\n-------------------------------------\n"+strAddedQuantity+sQUANTITY+"\n"+strAddedProduct+sNAME;break;}
}
if(!bAlreadyInCart){iNumberOrdered++;if(iNumberOrdered>15)alert(strSorry);else{dbUpdatedOrder=sID+"|"+sQUANTITY+"|"+sPRICE+"|"+sNAME+"|"+sWEIGHT+"|"+sLENGTH+"|"+sWIDTH+"|"+sHEIGHT;sNewOrder="Order."+iNumberOrdered;SetCookie(sNewOrder,dbUpdatedOrder,null,"/");SetCookie("NumberOrdered",iNumberOrdered,null,"/");notice=strAdded+"\n-------------------------------------\n"+strAddedQuantity+sQUANTITY+"\n"+strAddedProduct+sNAME;}
}
if(DisplayPopupOnAdd&&notice!="")alert(notice);return true;}
function moneyFormatFRA(input){var cents=""+Math.round(input*MoneyROUND_FRA);while(cents.length<MoneyPLACES+1)cents="0"+cents;return cents.substring(0,cents.length-MoneyPLACES)+"."+cents.substring(cents.length-MoneyPLACES,cents.length);}
function moneyFormatNOF(input){return ""+Cents(input);}
moneyFormat=(MoneyPLACES>0?moneyFormatFRA:moneyFormatNOF);function SetCookie(name,value,expires,path,domain,secure){document.cookie=CartID+name+"="+escape(value)+((expires)?"; expires="+expires.toGMTString():"")+((path)?"; path="+path:"")+((domain)?"; domain="+domain:"")+((secure)?"; secure":"");}
function DeleteCookie(name,path,domain){if(GetCookie(name)){document.cookie=CartID+name+"="+((path)?"; path="+path:"")+((domain)?"; domain="+domain:"")+"; expires=Thu, 01-Jan-70 00:00:01 GMT";}
}
function getCookieVal(offset){var endstr=document.cookie.indexOf(";",offset);if(endstr==-1)endstr=document.cookie.length;return unescape(document.cookie.substring(offset,endstr));}
function GetCookie(name){var arg=CartID+name+"=";var alen=arg.length;var clen=document.cookie.length;var i=0;while(i<clen){var j=i+alen;if(document.cookie.substring(i,j)==arg)return(getCookieVal(j));i=document.cookie.indexOf(" ",i)+1;if(i==0)break;}
return(null);}
function iGetCookie(name,DEF){if(DEF==null)DEF=null;var r=GetCookie(name);return(r==null?DEF:Integer(r));}
function GetRow(i){RowKey="Order."+i;dbrow="";dbrow=GetCookie(RowKey);Token0=dbrow.indexOf("|",0);Token1=dbrow.indexOf("|",Token0+1);Token2=dbrow.indexOf("|",Token1+1);Token3=dbrow.indexOf("|",Token2+1);Token4=dbrow.indexOf("|",Token3+1);Token5=dbrow.indexOf("|",Token4+1);Token6=dbrow.indexOf("|",Token5+1);fields=[];fields[0]=dbrow.substring(0,Token0);fields[1]=dbrow.substring(Token0+1,Token1);fields[2]=dbrow.substring(Token1+1,Token2);fields[3]=dbrow.substring(Token2+1,Token3);fields[4]=dbrow.substring(Token3+1,Token4);fields[5]=dbrow.substring(Token4+1,Token5);fields[6]=dbrow.substring(Token5+1,Token6);fields[7]=dbrow.substring(Token6+1,dbrow.length);}
function RemoveFromCart(RemOrder){if((DisplayPopupOnRemove?confirm(strRemove):true)){NumberOrdered=iGetCookie("NumberOrdered",0);for(var i=RemOrder;i<NumberOrdered;++i){NewOrder1="Order."+(i+1);NewOrder2="Order."+(i);database=GetCookie(NewOrder1);SetCookie(NewOrder2,database,null,"/");}
NewOrder="Order."+NumberOrdered;SetCookie("NumberOrdered",(NumberOrdered>0?NumberOrdered-1:0),null,"/");DeleteCookie(NewOrder,"/");location.href=location.href;}
}
function EmptyTheCart(){NumberOrdered=iGetCookie("NumberOrdered",0);for(var i=1;i<=NumberOrdered;++i){NewOrder="Order."+i;DeleteCookie(NewOrder,"/");}
SetCookie("NumberOrdered",0,null,"/");}
function ChangeQuantity(OrderItem,NewQuantityParm){var NewQuantity=Integer(NumberV(NewQuantityParm));if(NewQuantity==0){alert(strErrQty);NewQuantity=1;}
GetRow(OrderItem);dbUpdatedOrder=fields[0]+"|"+NewQuantity+"|"+fields[2]+"|"+fields[3]+"|"+fields[4]+"|"+fields[5]+"|"+fields[6]+"|"+fields[7];sNewOrder="Order."+OrderItem;DeleteCookie(sNewOrder,"/");SetCookie(sNewOrder,dbUpdatedOrder,null,"/");location.href=location.href;}
function ChangeQuantityIEkluge(e,OrderItem,NewQuantityParm){if(window.event&&e.keyCode==13){ChangeQuantity(OrderItem,NewQuantityParm);return false;}
return true;}
function ReadCartComputePrices(){var Dig="0123456789",Lwr="abcdefghijklmnopqrstuvwxyz",Upr="ABCDEFGHIJKLMNOPQRSTUVWXYZ",Let=Lwr+Upr;function Is(c,pat){return pat.indexOf(c)!=-1;}
var i,k;var KK=-1;var C,G,D,X,K;function Pparse(priceparm){C=0;G="";D=[];X=[];K=null;if(priceparm.substring(0,2)==">="){var x=priceparm.substring(2).split(":"),y=x[1].indexOf("%");if(y==-1)y=x[1].length;K={min:NumberZ(x[0]),amt:NumberZ(x[1].substring(0,y)),pct:x[1].substring(y)};}else for(var price=priceparm.split(","),J=0;J<price.length;++J){var T=price[J];if(T.indexOf("=")!=-1){var x=T.split("=");X.push({q:Integer(x[0]),p:NumberZ(x[1])});}
else if(T.indexOf(":")!=-1){var x=T.split(":");D.push({q:Integer(x[0]),p:NumberZ(x[1])});}
else if(Is(T.substring(0,1),Let))G=T;else C=NumberZ(T);}
}
Cart=[];iNumberOrdered=iGetCookie("NumberOrdered",0);for(i=1;i<=iNumberOrdered;++i){GetRow(i);Pparse(fields[2]);Cart[i]={ID:fields[0],QUANTITY:Integer(fields[1]),PRICE:fields[2],NAME:fields[3],WEIGHT:NumberZ(fields[4]),LENGTH:NumberZ(fields[5]),WIDTH:NumberZ(fields[6]),HEIGHT:NumberZ(fields[7]),C:C,G:G,D:D,X:X,K:K,PRICEAVG:null
}
}
for(i=1;i<=iNumberOrdered;++i){if(Cart[i].PRICEAVG!=null)continue;C=Cart[i].C;G=Cart[i].G;D=Cart[i].D;X=Cart[i].X;K=Cart[i].K;function eEQ(A,B){return A.q==B.q&&A.p==B.p;}
function aEQ(A,B){if(A.length!=B.length)return false;for(var k=A.length;k--;)if(!eEQ(A[k],B[k]))return false;return true;}
function pEQ(A,B){return A.C==B.C&&aEQ(A.D,B.D)&&aEQ(A.X,B.X);}
function str(X){var s="[";for(var i=0;i<X.length;++i)s+="{"+X[i].q+","+X[i].p+"},";s+="]";return s;}
function pp(P){return(P>=0?P:C*(100+P)/100);}
var q=Cart[i].QUANTITY;var Q=q;if(G!="")for(Q=0,k=1;k<=iNumberOrdered;++k)if(Cart[k].G==G)Q+=Cart[k].QUANTITY;var g=[i];if(G!="")for(g=[],k=1;k<=iNumberOrdered;++k)if(Cart[k].G==G)g.push(k);var ix=-1;for(k=X.length;k--;)if(X[k].q<=Q){ix=k;break;}
var id=-1;for(k=D.length;k--;)if(D[k].q<=Q){id=k;break;}
DEBUG4("row:"+i+" itm:"+Cart[i].ID+" PRICE:"+Cart[i].PRICE+" C:"+C+" G:"+G+" X:"+str(X)+" D:"+str(D)+" g:"+g+" ix:"+ix+" id:"+id);if(X.length>0){var m=[];for(k=g.length;k--;)if(!pEQ(Cart[g[k]],Cart[i]))m.push(g[k]);if(m.length>0)DEBUG("group:"+G+" has exact-qty discount but PRICE on row:"+i+" conflicts with rows:"+m);if(m.length>0){for(k=g.length;k--;)Cart[g[k]].PRICEAVG=C;continue;}
}
var A,QQ,q2,I;if(K){Cart[i].QUANTITY=1;Cart[i].PRICEAVG=0;KK=i;}else if(ix!=-1){A=0;QQ=Q;while(Q!=0){q2=Math.floor(Q/X[ix].q)*X[ix].q;A+=q2*pp(X[ix].p);Q-=q2;DEBUG4("sell "+q2+" at:"+pp(X[ix].p)+" Q:"+Q);--ix;while(ix>=0&&X[ix].q>Q)--ix;if(ix==-1)break
if(id!=-1&&pp(D[id].p)<pp(X[ix].p))break;}
if(Q>0)A+=Q*(id!=-1?pp(D[id].p):C);var priceavg=Cents(A/QQ);for(k=g.length;k--;){I=g[k];Cart[I].PRICEAVG=priceavg;}
}else if(id!=-1){var ID,QD=0;for(k=0;k<g.length;++k){I=g[k];A=0;q=Cart[I].QUANTITY;C=Cart[I].C;D=Cart[I].D;if(D.length==0||D[0].q!=1)D.unshift({q:1,p:C});while(q>0){for(ID=0;;++ID)if(ID+1==D.length||QD+1<D[ID+1].q)break;q2=q;if(ID+1<D.length)q2=Math.min(q,D[ID+1].q-1-QD);A+=q2*pp(D[ID].p);QD+=q2;q-=q2;DEBUG4("sell "+q2+" at:"+pp(D[ID].p)+" ID:"+ID+" QD:"+QD);if(q2<=0){DEBUG("ReadCartComputePrices is broken");break;}
}
Cart[I].PRICEAVG=Cents(A/Cart[I].QUANTITY);}
}else{Cart[i].PRICEAVG=Cents(C);}
}
if(KK!=-1){for(fTotal=0,i=1;i<=iNumberOrdered;++i)fTotal+=Cart[i].QUANTITY*Cart[i].PRICEAVG;K=Cart[KK].K;if(fTotal>=K.min)Cart[KK].PRICEAVG=(K.pct?fTotal*K.amt/100:-Math.min(-K.amt,fTotal));AllInOne=true;}
ZoneSelected=iGetCookie("ZoneSelected");ZoneChecked=ZoneSelected;RegionSelected=iGetCookie("RegionSelected");RegionChecked=RegionSelected;if(ZoneSelected==null)ZoneSelected=ZoneDefault;if(RegionFromZone.length&&RegionSelected==null)RegionSelected=RegionFromZone[ZoneSelected][0];if(RegionFromZoneOverrides)RegionSelected=RegionFromZone[ZoneSelected][0];if(ZoneChecked!=null&&RegionFromZoneOvA[ZoneChecked])RegionSelected=RegionFromZone[ZoneChecked][0];if(RegionSelected==null)RegionSelected=RegionDefault;if(RegionFromZone.length&&!Element(RegionSelected,RegionFromZone[ZoneSelected])){if(ZoneChecked!=null||RegionChecked==null){RegionSelected=RegionFromZone[ZoneSelected][0];}else{for(var Z=RegionFromZone.length;Z--;)if(Element(RegionSelected,RegionFromZone[Z]))break;if(Z>=0)ZoneSelected=Z;else DEBUG("RegionFromZone option is invalid");}
}
if(RegionChecked!=null)RegionChecked=RegionSelected;if(ZoneChecked!=null)ZoneChecked=ZoneSelected;if(RegionsUsed&&RegionPrompt!=""&&!RegionFromZoneOverrides&&!(ZoneChecked!=null&&RegionFromZoneOvA[ZoneChecked])){}
else RegionChecked=RegionSelected;if(ShipTable.length>1&&ZonePrompt!=""&&!(RegionChecked!=null&&ZoneFromRegionOvA[RegionChecked])){}
else ZoneChecked=ZoneSelected;InitPkgQueue();fTotal=0;fTaxA=[];for(R=0;R<RegionTable.length;++R)fTaxA[R]=0;g_TotalQty=0;var taxnbrs=TaxesByRegion[RegionSelected]||[];var taxrate=[];for(T=0;T<TaxRates.length;++T)taxrate[T]=0;for(N=0;N<taxnbrs.length;++N)taxrate[taxnbrs[N]]=TaxRates[taxnbrs[N]];for(i=1;i<=iNumberOrdered;++i){var ProdID=Cart[i].ID,QP=Cart[i].QUANTITY*Cart[i].PRICEAVG,taxX=null;tax=[],taxsum=0;for(pref in TaxesByID)if(typeof TaxesByID[pref]!=="function")if(PrefEQ(ProdID,pref)){taxX=TaxesByID[pref];break;}
if(taxX){for(T=0;T<TaxRates.length;++T)tax[T]=0;for(K=taxX.length;K--;){T=taxX[K];tax[T]=QP*taxrate[T];}}
else{for(T=0;T<TaxRates.length;++T)tax[T]=QP*taxrate[T];}
if(DisplayTaxIncluded){for(T=0;T<TaxRates.length;++T){tax[T]=Cents(tax[T]);taxsum+=tax[T];}
Cart[i].PRICEAVG+=taxsum/Cart[i].QUANTITY;}
AddPkgQueueEntry(Cart[i].QUANTITY,new Size(Cart[i].LENGTH,Cart[i].WIDTH,Cart[i].HEIGHT),Cart[i].WEIGHT);fTotal+=Cart[i].QUANTITY*Cart[i].PRICEAVG;for(T=0;T<TaxRates.length;++T)fTaxA[T]+=tax[T];g_TotalQty+=Cart[i].QUANTITY;}
ComputePackageSize(ZoneSelected);fShipping=ComputeShipping(ZoneSelected);ppTotal=fTotal;ppShipping=fShipping;if(ppTotal==0){ppTotal=moneyEps;ppShipping=Math.max(ppShipping-moneyEps,0);}
if(ShipTaxAsItems&&!DisplayTaxIncluded){for(T=0;T<TaxRates.length;++T)fTaxA[T]+=fTaxA[T]/ppTotal*fShipping;}
for(T=0;T<TaxRates.length;++T)fTaxA[T]=Cents(fTaxA[T]);fTax=0;if(!DisplayTaxIncluded)for(T=0;T<TaxRates.length;++T)fTax+=fTaxA[T];g_TotalCost=fTotal+fShipping+fTax;}
function AddPaymentProcessorFieldsForOneRow(PP,i){var sN="";if(AppendItemNumToOutput)sN=""+i;var SEP="\n";if(PP=="ap"||PP=="pp")SEP="; ";var ProdNAME=Cart[i].NAME;var Notes="";if(i==iNumberOrdered&&NotesOnItem){Notes+=SEP;Notes+=(ShipTable[ZoneSelected].zone?strSHIP+" "+ShipTable[ZoneSelected].zone:"");Notes+=(sComputeShippingNote?" ":"")+sComputeShippingNote;Notes+=(RegionsUsed?", "+RegionTable[RegionSelected]:"");}
if(PP=="an"||PP=="wp"||PP=="lp"||PP=="ap"||PP=="vt")AllInOne=true;if(PP=="gc"||PP=="is")AllInOne=false;if(AllInOne){sDescAIO+=Cart[i].ID+", "+ProdNAME+", Qty:"+Cart[i].QUANTITY+Notes+(i<iNumberOrdered?SEP:"");}
ProdNAME+=Notes;if(PP=="pp"&&(!AllInOne||i==iNumberOrdered)){var ppNAME=(AllInOne?sDescAIO:ProdNAME);var ppNAME1=ppNAME.substring(0,127);var ppNAME2=ppNAME.substring(127,327);var ppNAME3=ppNAME.substring(327,527);var ppID=Cart[i].ID,ppPRICE=Cart[i].PRICEAVG,ppQUANTITY=Cart[i].QUANTITY;if(AllInOne){ppID="AIO";ppPRICE=ppTotal;ppQUANTITY=1;}
if(AllInOne&&AppendItemNumToOutput)sN=""+1;sOutPP+="<input type=hidden name=\"item_number_"+sN+"\" value=\""+ppID+"\">";sOutPP+="<input type=hidden name=\"item_name_"+sN+"\" value=\""+ppNAME1+"\">";sOutPP+="<input type=hidden name=\"amount_"+sN+"\" value=\""+moneyFormat(ppPRICE)+"\">";sOutPP+="<input type=hidden name=\"quantity_"+sN+"\" value=\""+ppQUANTITY+"\">";if(ppNAME2)sOutPP+="<input type=hidden name=\"on0_"+sN+"\" value=\""+"Info2"+"\">";if(ppNAME2)sOutPP+="<input type=hidden name=\"os0_"+sN+"\" value=\""+ppNAME2+"\">";if(ppNAME3)sOutPP+="<input type=hidden name=\"on1_"+sN+"\" value=\""+"Info3"+"\">";if(ppNAME3)sOutPP+="<input type=hidden name=\"os1_"+sN+"\" value=\""+ppNAME3+"\">";}else if(PP=="gc"){sOutPP+="<input type=hidden name=\"item_name_"+sN+"\" value=\""+Cart[i].ID+"\">";sOutPP+="<input type=hidden name=\"item_description_"+sN+"\" value=\""+ProdNAME+"\">";sOutPP+="<input type=hidden name=\"item_price_"+sN+"\" value=\""+moneyFormat(Cart[i].PRICEAVG)+"\">";sOutPP+="<input type=hidden name=\"item_quantity_"+sN+"\" value=\""+Cart[i].QUANTITY+"\">";sOutPP+="<input type=hidden name=\"item_currency_"+sN+"\" value=\""+gcCurrency+"\">";}else if(PP=="is"){if(i==1)sOutPP+="<input type=hidden name=\"Products\" value=\"Price::Qty::Code::Description::Flags";sOutPP+="|"+moneyFormat(Cart[i].PRICEAVG)+"::"+Cart[i].QUANTITY+"::"+Cart[i].ID+"::"+ProdNAME+"::"+isFlags;}else if(PP=="cgi"){sOutPP+="<input type=hidden name=\""+OutputItemId+sN+"\" value=\""+Cart[i].ID+"\">";sOutPP+="<input type=hidden name=\""+OutputItemQuantity+sN+"\" value=\""+Cart[i].QUANTITY+"\">";sOutPP+="<input type=hidden name=\""+OutputItemPrice+sN+"\" value=\""+moneyFormat(Cart[i].PRICEAVG)+"\">";sOutPP+="<input type=hidden name=\""+OutputItemName+sN+"\" value=\""+Cart[i].NAME+"\">";sOutPP+="<input type=hidden name=\""+OutputItemWeight+sN+"\" value=\""+Cart[i].WEIGHT+"\">";sOutPP+="<input type=hidden name=\""+OutputItemLength+sN+"\" value=\""+Cart[i].LENGTH+"\">";sOutPP+="<input type=hidden name=\""+OutputItemWidth+sN+"\" value=\""+Cart[i].WIDTH+"\">";sOutPP+="<input type=hidden name=\""+OutputItemHeight+sN+"\" value=\""+Cart[i].HEIGHT+"\">";}
}
function AddPaymentProcessorFieldsFinal(PP){if(PP=="an"){sOutPP+="<input type=hidden name=\"x_version\"       value=\"3.1\">";sOutPP+="<input type=hidden name=\"x_show_form\"     value=\"PAYMENT_FORM\">";sOutPP+="<input type=hidden name=\"x_description\"   value=\""+sDescAIO+"\">";sOutPP+="<input type=hidden name=\"x_amount\"        value=\""+moneyFormat(fTotal+fShipping+fTax)+"\">";}else if(PP=="wp"){sOutPP+="<input type=hidden name=\"desc\"            value=\""+sDescAIO+"\">";sOutPP+="<input type=hidden name=\"amount\"          value=\""+moneyFormat(fTotal+fShipping+fTax)+"\">";}else if(PP=="lp"){sOutPP+="<input type=hidden name=\"mode\"            value=\"fullpay\">";sOutPP+="<input type=hidden name=\"chargetotal\"     value=\""+moneyFormat(fTotal+fShipping+fTax)+"\">";sOutPP+="<input type=hidden name=\"tax\"             value=\""+MoneySymbol+moneyFormat(fTax)+"\">";sOutPP+="<input type=hidden name=\"subtotal\"        value=\""+MoneySymbol+moneyFormat(fTotal)+"\">";sOutPP+="<input type=hidden name=\"shipping\"        value=\""+MoneySymbol+moneyFormat(fShipping)+"\">";sOutPP+="<input type=hidden name=\"desc\"            value=\""+sDescAIO+"\">";}else if(PP=="vt"){sOutPP+="<input type=hidden name=\"item_name\"       value=\""+sDescAIO+"\">";sOutPP+="<input type=hidden name=\"amount\"          value=\""+moneyFormat(fTotal+fShipping+fTax)+"\">";}else if(PP=="ap"){sOutPP+="<input type=hidden name=\"ap_purchasetype\"    value=\""+"item"+"\">";sOutPP+="<input type=hidden name=\"ap_itemname\"        value=\""+"cart"+"\">";sOutPP+="<input type=hidden name=\"ap_description\"     value=\""+sDescAIO+"\">";sOutPP+="<input type=hidden name=\"ap_quantity\"        value=\""+"1"+"\">";sOutPP+="<input type=hidden name=\"ap_amount\"          value=\""+moneyFormat(fTotal)+"\">";sOutPP+="<input type=hidden name=\"ap_shippingcharges\" value=\""+moneyFormat(fShipping)+"\">";sOutPP+="<input type=hidden name=\"ap_taxamount\"       value=\""+moneyFormat(fTax)+"\">";sOutPP+="<input type=hidden name=\"ap_totalamount\"     value=\""+moneyFormat(fTotal+fShipping+fTax)+"\">";}else if(PP=="pp"){sOutPP+="<input type=hidden name=\"cmd\"             value=\"_cart\">";sOutPP+="<input type=hidden name=\"upload\"          value=\"1\">";sOutPP+="<input type=hidden name=\"tax_cart\"        value=\""+moneyFormat(fTax)+"\">";sOutPP+="<input type=hidden name=\"handling_cart\"   value=\""+moneyFormat(ppShipping)+"\">";sOutPP+="<input type=hidden name=\"no_note\"         value=\""+"1"+"\">";}else if(PP=="gc"){if(fTax!=0){var sN=""+(iNumberOrdered+1);sOutPP+="<input type=hidden name=\"item_name_"+sN+"\" value=\""+"TAX"+"\">";sOutPP+="<input type=hidden name=\"item_description_"+sN+"\" value=\""+"Tax"+(RegionsUsed?" for "+RegionTable[RegionSelected]:"")+"\">";sOutPP+="<input type=hidden name=\"item_price_"+sN+"\" value=\""+moneyFormat(fTax)+"\">";sOutPP+="<input type=hidden name=\"item_quantity_"+sN+"\" value=\""+"1"+"\">";sOutPP+="<input type=hidden name=\"item_currency_"+sN+"\" value=\""+gcCurrency+"\">";}
sOutPP+="<input type=hidden name=\"ship_method_price_1\"     value=\""+moneyFormat(fShipping)+"\">";sOutPP+="<input type=hidden name=\"ship_method_currency_1\"  value=\""+gcCurrency+"\">";sOutPP+="<input type=hidden name=\"ship_method_name_1\"      value=\""+ShipTable[ZoneSelected].zone+" "+sComputeShippingNote+"\">";sOutPP+="<input type=hidden name=\"_charset_\"/>";}else if(PP=="is"&&iNumberOrdered){sOutPP+="|"+moneyFormat(fShipping)+"::1::SHIP::"+ShipTable[ZoneSelected].zone+" "+sComputeShippingNote+"::"+isFlags;sOutPP+="|"+moneyFormat(fTax)+"::1::TAX::Tax"+(RegionsUsed?" for "+RegionTable[RegionSelected]:"")+"::"+isFlags;sOutPP+="\">";}else if(PP=="cgi"){sOutPP+="<input type=hidden name=\""+OutputOrderSubtotal+"\" value=\""+MoneySymbol+moneyFormat(fTotal)+"\">";sOutPP+="<input type=hidden name=\""+OutputOrderShipping+"\" value=\""+MoneySymbol+moneyFormat(fShipping)+"\">";sOutPP+="<input type=hidden name=\""+OutputOrderTax+"\" value=\""+MoneySymbol+moneyFormat(fTax)+"\">";sOutPP+="<input type=hidden name=\""+OutputOrderTotal+"\" value=\""+MoneySymbol+moneyFormat(fTotal+fShipping+fTax)+"\">";sOutPP+="<input type=hidden name=\""+OutputOrderZone+"\" value=\""+ShipTable[ZoneSelected].zone+" "+sComputeShippingNote+"\">";sOutPP+="<input type=hidden name=\""+OutputOrderRegion+"\" value=\""+(RegionsUsed?RegionTable[RegionSelected]:"")+"\">";}
DEBUG8(sOutPP);}
function AddTaxSubtotalLines(INC,COL,BEG,END){if(COL==null)COL=7;if(BEG==null)BEG="<B>";if(END==null)END="</B>";if(TaxNames.length>=2){for(T=0;T<TaxRates.length;++T)if(fTaxA[T])sOutput+="<TR><TD CLASS=\"noptotal\" COLSPAN="+COL+">"+BEG+strTAX+"-"+TaxNames[T]+INC+"&nbsp; "+END+"</TD>"+"<TD CLASS=\"noptotal\" ALIGN=RIGHT>"+BEG+MoneySymbol+moneyFormat(fTaxA[T])+END+"</TD></TR>";}else{var fTaxAsum=0;for(T=0;T<TaxRates.length;++T)fTaxAsum+=fTaxA[T];if(fTaxAsum)sOutput+="<TR><TD CLASS=\"noptotal\" COLSPAN="+COL+">"+BEG+strTAX+INC+"&nbsp; "+END+"</TD>"+"<TD CLASS=\"noptotal\" ALIGN=RIGHT>"+BEG+MoneySymbol+moneyFormat(fTaxAsum)+END+"</TD></TR>";}
}
function ManageCart(PP){if(PP==null)PP=PaymentProcessor;var MoreState=iGetCookie("MoreState");if(MoreState==null)MoreState=(DisplayWtColumn?1:0)*2+(DisplaySzColumn?1:0);ReadCartComputePrices();sDescAIO="";sOutPP="";sOutput="<TABLE CELLSPACING=0 CELLPADDING=2 BORDER=0 CLASS=\"nopcart\"><TR>"+"<TD CLASS=\"nopheader\" ALIGN=CENTER><B>"+(DisplayImgColumn?strTLabel:"")+"</B></TD>"+"<TD CLASS=\"nopheader\" ALIGN=CENTER><B>"+strILabel+"</B></TD>"+"<TD CLASS=\"nopheader\" ALIGN=LEFT  ><B>"+strDLabel+"</B></TD>"+"<TD CLASS=\"nopheader\" ALIGN=CENTER><B>"+strQLabel+"</B></TD>"+"<TD CLASS=\"nopheader\" ALIGN=RIGHT ><B>"+strPLabel+"</B></TD>"+"<TD CLASS=\"nopheader\" ALIGN=RIGHT ><B>"+(MoreState&2?strWLabel:"&nbsp;")+"</B></TD>"+"<TD CLASS=\"nopheader\" ALIGN=RIGHT ><B>"+(MoreState&1?strZLabel:"&nbsp;")+"</B></TD>"+"<TD CLASS=\"nopheader\" ALIGN=RIGHT ><B>"+strRLabel+"</B></TD></TR>";if(iNumberOrdered==0)sOutput+="<TR><TD COLSPAN=8 CLASS=\"nopentry\"><CENTER><BR><B>"+strCartEmpty+"</B><BR><BR></CENTER></TD></TR>";for(var i=1;i<=iNumberOrdered;++i){var sCLASS="nopentry";if(Math.round(i/2)==(i/2))sCLASS="nopeven";sOutput+="<TR>";if(DisplayImgColumn)sOutput+="<TD CLASS=\""+sCLASS+"\" ALIGN=CENTER><IMG SRC="+ImgPrefix+Cart[i].ID+"."+DisplayImgColumn+"></TD>";else sOutput+="<TD CLASS=\""+sCLASS+"\"></TD>";if(1)sOutput+="<TD CLASS=\""+sCLASS+"\" ALIGN=CENTER>"+Cart[i].ID+"</TD>";if(1)sOutput+="<TD CLASS=\""+sCLASS+"\">"+Cart[i].NAME+"</TD>";if(DisplayChangeQty)sOutput+="<TD CLASS=\""+sCLASS+"\" ALIGN=CENTER><INPUT TYPE=TEXT NAME=Q SIZE=2 VALUE=\""+Cart[i].QUANTITY+"\" onChange=\"ChangeQuantity("+i+",this.value)\" onkeydown=\"return ChangeQuantityIEkluge(event,"+i+",this.value)\"></TD>";else sOutput+="<TD CLASS=\""+sCLASS+"\" ALIGN=CENTER>"+Cart[i].QUANTITY+"</TD>";if(1)sOutput+="<TD CLASS=\""+sCLASS+"\" ALIGN=RIGHT>"+MoneySymbol+moneyFormat(Cart[i].PRICEAVG)+strEA+"</TD>";if(MoreState&2)sOutput+="<TD CLASS=\""+sCLASS+"\" ALIGN=RIGHT>"+WtRnd(Cart[i].WEIGHT)+WTUNITS+"</TD>";else sOutput+="<TD CLASS=\""+sCLASS+"\"></TD>";if(MoreState&1)sOutput+="<TD CLASS=\""+sCLASS+"\" ALIGN=RIGHT>&nbsp; "+Cart[i].LENGTH+"x"+Cart[i].WIDTH+"x"+Cart[i].HEIGHT+SZUNITS+"</TD>";else sOutput+="<TD CLASS=\""+sCLASS+"\"></TD>";sOutput+="<TD CLASS=\""+sCLASS+"\" ALIGN=RIGHT>&nbsp; <input type=button value=\""+strRButton+"\" onClick=\"RemoveFromCart("+i+")\" class=\"nopbutton\"></TD>";sOutput+="</TR>";AddPaymentProcessorFieldsForOneRow(PP,i);}
if((DisplaySubtotalRow&1)&&fShipping+fTax!=0){sOutput+="<TR><TD CLASS=\"noptotal\" COLSPAN=7><B>"+strSUB+"</B></TD>";sOutput+="<TD CLASS=\"noptotal\" ALIGN=RIGHT><B>"+MoneySymbol+moneyFormat(fTotal)+"</B></TD></TR>";}
if(DisplayPkgAttrRow&&(PkgAsOne.weight+PkgAsOne.size.height)&&iNumberOrdered){var MoreLessButton=(MoreState==DynamicWtSzColumns?strLButton:strMButton);var bW=MoreState&2,bw=bW^2,sW="&nbsp; "+PkgAsOne.weight+WTUNITS;var bS=MoreState&1,bs=bS^1,sS="&nbsp; "+SizeStr(PkgAsOne.size)+SZUNITS;if(DynamicWtSzColumns){bw&=DynamicWtSzColumns;bs&=DynamicWtSzColumns;}
sOutput+="<TR><TD CLASS=\"noptotal\" COLSPAN=5><B>"+strWTSZTOT+(bw?sW:"")+(bs?sS:"")+"</B></TD>";sOutput+="<TD CLASS=\"noptotal\" ALIGN=RIGHT><B>"+(bW?sW:"")+"</B></TD>";sOutput+="<TD CLASS=\"noptotal\" ALIGN=RIGHT><B>"+(bS?sS:"")+"</B></TD>";if(DynamicWtSzColumns)sOutput+="<TD CLASS=\"noptotal\" ALIGN=RIGHT>&nbsp; <input type=button value=\""+MoreLessButton+"\" onClick=\"MoreLessInfo()\" class=\"nopbutton\"></TD>";else sOutput+="<TD CLASS=\"noptotal\" ALIGN=RIGHT></TD>";sOutput+="</TR>";}
if(ShipTable.length>1&&(PkgAsOne.weight+PkgAsOne.size.height)&&iNumberOrdered){sOutput+="<TR><TD COLSPAN=8 CLASS=nopship><TABLE CELLSPACING=0 CELLPADDING=0>";sOutput+="<TR><TD CLASS=\"nopship\"><B>"+strSHIPPINGZONE+"</B></TD>";sOutput+="<TD CLASS=\"nopship\" STYLE=\"padding-left:1em\">";for(var z=0;z<ShipTable.length;z++)sOutput+="<input type=radio name=\"ZONE\" value=\""+z+"\""+(z==ZoneChecked?" checked":"")+" onClick=\"NewZone(this.value)\">"+ShipTable[z].zone+"<br>";sOutput+="</TD></TR>";sOutput+="</TABLE></TD></TR>";}
if(DisplayShippingRow&&(PkgAsOne.weight+PkgAsOne.size.height)&&iNumberOrdered){sOutput+="<TR><TD CLASS=\"noptotal\" COLSPAN=7><B>"+strSHIP+"&nbsp; "+ShipTable[ZoneSelected].zone+"</B>&nbsp;&nbsp;"+sComputeShippingNote+"</TD>";sOutput+="<TD CLASS=\"noptotal\" ALIGN=RIGHT><B>"+MoneySymbol+moneyFormat(fShipping)+"</B></TD></TR>";}
if((DisplaySubtotalRow&2)&&fTax!=0&&!(DisplaySubtotalRow==3&&fShipping==0)){sOutput+="<TR><TD CLASS=\"noptotal\" COLSPAN=7><B>"+strSUB+"</B></TD>";sOutput+="<TD CLASS=\"noptotal\" ALIGN=RIGHT><B>"+MoneySymbol+moneyFormat(fTotal+fShipping)+"</B></TD></TR>";}
if(RegionsUsed&&!RegionFromZoneOverrides&&!(RegionSuppressible&&RegionFromZoneOvA[ZoneSelected])&&iNumberOrdered){var NC=Math.ceil(RegionTable.length/DisplayRegionColumns);sOutput+="<TR><TD COLSPAN=8 CLASS=\"noptotal\"><BR></TD></TR>";sOutput+="<TR><TD COLSPAN=8 CLASS=nopship><TABLE CELLSPACING=0 CELLPADDING=0>";sOutput+="<TR>";sOutput+="<TD CLASS=\"nopship\"><B>"+strTAXABLEREGION+"</B></TD>";sOutput+="<TD CLASS=\"nopship\" VALIGN=TOP STYLE=\"padding-left:1em\">";for(var R=0;R<RegionTable.length;){sOutput+="<input type=radio name=\"TAX\" value=\""+R+"\""+(R==RegionChecked?" checked":"")+" onClick=\"NewRegion(this.value)\">"+RegionTable[R]+"<br>";++R;if(R<RegionTable.length&&R%NC==0)sOutput+="</TD><TD CLASS=\"nopship\" VALIGN=TOP STYLE=\"padding-left:1em\">"
}
sOutput+="</TD></TR>";sOutput+="</TABLE></TD></TR>";}
if(DisplayTaxRow&&iNumberOrdered&&!DisplayTaxIncluded){AddTaxSubtotalLines("");}
sOutput+="<TR><TD CLASS=\"noptotal\" COLSPAN=7><B>"+strTOT+"</B></TD>";sOutput+="<TD CLASS=\"noptotal\" ALIGN=RIGHT><B>"+MoneySymbol+moneyFormat(fTotal+fShipping+fTax)+"</B></TD></TR>";if(DisplayTaxRow&&iNumberOrdered&&DisplayTaxIncluded){AddTaxSubtotalLines(" "+strINCLUDEDINTOTAL,7,"<i>","</i>");}
if(DisplayTaxRow&&gVat&&RegionSelected<=SameCountry&&ShipTaxName!="")sOutput+="<TR><TD CLASS=\"noptotal\" COLSPAN=7><i>"+ShipTaxName+"</i></TD>"+"<TD CLASS=\"noptotal\" ALIGN=RIGHT>"+MoneySymbol+moneyFormat(gVat)+"</TD></TR>";sOutput+="</TABLE>";AddPaymentProcessorFieldsFinal(PP);document.write(sOutput+sOutPP);document.close();}
function ValidateCart(theForm){if(isNaN(g_TotalCost)){alert(strTotalNaN);return false;}
if(g_TotalCost<MinimumOrder){alert(MinimumOrderPrompt);return false;}
var N=iGetCookie("NumberOrdered",0);if(N==0)return;var ZoneCookie=iGetCookie("ZoneSelected");var RegionCookie=iGetCookie("RegionSelected");if(ZoneCookie==null&&(PkgAsOne.weight+PkgAsOne.size.height)&&ShipTable.length>1&&ZonePrompt!=""&&!(RegionCookie!=null&&ZoneFromRegionOvA[RegionCookie])){alert(ZonePrompt);return false;}
if(RegionCookie==null&&RegionsUsed&&RegionPrompt!=""&&!RegionFromZoneOverrides&&!(ZoneCookie!=null&&RegionFromZoneOvA[ZoneCookie])){alert(RegionPrompt);return false;}
return true;}
function CheckoutCart(PP){if(PP==null)PP=PaymentProcessor2;ReadCartComputePrices();sDescAIO="";sOutPP="";sOutput="<TABLE CELLSPACING=0 CELLPADDING=2 BORDER=0 CLASS=\"nopcart\"><TR>"+"<TD CLASS=\"nopheader\" ALIGN=CENTER><B>"+strILabel+"</B></TD>"+"<TD CLASS=\"nopheader\" ALIGN=CENTER><B>"+strDLabel+"</B></TD>"+"<TD CLASS=\"nopheader\" ALIGN=CENTER><B>"+strQLabel+"</B></TD>"+"<TD CLASS=\"nopheader\" ALIGN=CENTER><B>"+strPLabel+"</B></TD>"+"<TD CLASS=\"nopheader\" ALIGN=CENTER><B>"+strALabel+"</B></TD></TR>";for(var i=1;i<=iNumberOrdered;++i){var sCLASS="nopentry";if(Math.round(i/2)==(i/2))sCLASS="nopeven";sOutput+="<TR><TD CLASS=\""+sCLASS+"\" ALIGN=CENTER>"+Cart[i].ID+"</TD>";sOutput+="<TD CLASS=\""+sCLASS+"\">"+Cart[i].NAME+"</TD>";sOutput+="<TD CLASS=\""+sCLASS+"\" ALIGN=CENTER>"+Cart[i].QUANTITY+"</TD>";sOutput+="<TD CLASS=\""+sCLASS+"\" ALIGN=RIGHT>"+MoneySymbol+moneyFormat(Cart[i].PRICEAVG)+strEA+"</TD>";sOutput+="<TD CLASS=\""+sCLASS+"\" ALIGN=RIGHT>"+MoneySymbol+moneyFormat(Cart[i].QUANTITY*Cart[i].PRICEAVG)+"</TD></TR>";AddPaymentProcessorFieldsForOneRow(PP,i);}
if((DisplaySubtotalRow&1)&&fShipping+fTax!=0){sOutput+="<TR><TD CLASS=\"noptotal\" COLSPAN=4><B>"+strSUB+"</B></TD>";sOutput+="<TD CLASS=\"noptotal\" ALIGN=RIGHT><B>"+MoneySymbol+moneyFormat(fTotal)+"</B></TD></TR>";}
if(DisplayShippingRow){sOutput+="<TR><TD CLASS=\"noptotal\" COLSPAN=4><B>"+strSHIP+"&nbsp; "+ShipTable[ZoneSelected].zone+"</B></TD>";sOutput+="<TD CLASS=\"noptotal\" ALIGN=RIGHT><B>"+MoneySymbol+moneyFormat(fShipping)+"</B></TD></TR>";}
if((DisplaySubtotalRow&2)&&fTax!=0&&!(DisplaySubtotalRow==3&&fShipping==0)){sOutput+="<TR><TD CLASS=\"noptotal\" COLSPAN=4><B>"+strSUB+"</B></TD>";sOutput+="<TD CLASS=\"noptotal\" ALIGN=RIGHT><B>"+MoneySymbol+moneyFormat(fTotal+fShipping)+"</B></TD></TR>";}
if(DisplayTaxRow&&!DisplayTaxIncluded){AddTaxSubtotalLines("",4);}
sOutput+="<TR><TD CLASS=\"noptotal\" COLSPAN=4><B>"+strTOT+"</B></TD>";sOutput+="<TD CLASS=\"noptotal\" ALIGN=RIGHT><B>"+MoneySymbol+moneyFormat(fTotal+fShipping+fTax)+"</B></TD></TR>";if(DisplayTaxRow&&DisplayTaxIncluded){AddTaxSubtotalLines(" "+strINCLUDEDINTOTAL,4,"<i>","</i>");}
if(DisplayTaxRow&&gVat&&RegionSelected<=SameCountry&&ShipTaxName!="")sOutput+="<TR><TD CLASS=\"noptotal\" COLSPAN=4><i>"+ShipTaxName+"</i></TD>"+"<TD CLASS=\"noptotal\" ALIGN=RIGHT>"+MoneySymbol+moneyFormat(gVat)+"</TD></TR>";sOutput+="</TABLE>";AddPaymentProcessorFieldsFinal(PP);document.write(sOutput+sOutPP);document.close();}
function PaymentProcessorFields(PP){ReadCartComputePrices();sDescAIO="";sOutPP="";for(var i=1;i<=iNumberOrdered;++i)AddPaymentProcessorFieldsForOneRow(PP,i);AddPaymentProcessorFieldsFinal(PP);document.write(sOutPP);document.close();}
function Cart_is_empty(){iNumberOrdered=iGetCookie("NumberOrdered",0);return iNumberOrdered==0;}
function Print_total(){ReadCartComputePrices();document.write(moneyFormat(fTotal));}
function Print_number_items(Verbose){ReadCartComputePrices();sOutput=""+g_TotalQty;if(Verbose)sOutput+=(g_TotalQty==1?" item":" items");document.write(sOutput);}
Print_total_products=Print_number_items;function Print_cart_summary(B1,B2,C){if(B1==null)B1=" item";if(B2==null)B2=" items";if(C==null)C=", at a cost of ";ReadCartComputePrices();sOutput=""+g_TotalQty+(g_TotalQty==1?B1:B2)+C+MoneySymbol+moneyFormat(fTotal);document.write(sOutput);}
