// 3.Create Product Group // 3.1.Add All Selections (by ID) // 3.2.Add All Options (by ID) // 3.3.Product Assign Array // 3.4.Create // Products var pOptSel_20370_98_91 = new Selection(91,"Upload - Print Ready","
Upload Print Ready -
Already have your file ready to upload, then this is the option for you","Print Ready inc 3mm bleed","","",true,0.0,0,0,0); var pOptSel_20370_98_97 = new Selection(97,"Design Services","
Full Artwork Design -
Let us do it for you, send your logo
and text and any other information to art@front.com.au
and place your order now, but please email all the details at
the time of placing your order as later changes will incur
additional costs. Also our stated turnaround time only
starts once your artwork has been completed and approved.
","Artwork Design Services","","",false,0.0,0,0,0); var pOptSel_20370_98_110 = new Selection(110,"Design Online","
Design Online
Use our online design tool to let your creative mind run wild.  Pick from different templates and backgrounds.","Design Online","","",false,0.0,0,0,0); var pOptSel_20370_98_263 = new Selection(263,"Make Artwork Press Ready","
Need a little help -
I have existing Artwork but need some small changes made.
Please email what you have to art@front.com.au and
place your order through our system now.
","I need a little help","","",false,0.0,0,0,0); var pOptSel_20370_196_287 = new Selection(287,"Plastic Card Thickness .50mm","
.50mm
 - about 2 thirds the thickness of a credit card.
",".50mm","","",true,0.0,0,0,0); var pOptSel_20370_204_330 = new Selection(330,"Pick-up (Sydney Only)","","Pick-up (7.30 -6.00pm Mon-Fri)","","",false,0.0,0,0,0); var pOptSel_20370_219_348 = new Selection(348,"Turnaround Time on Plastic Cards (Standard)","
Standard 10 Working days 
turnaround is fine. Please note
this is the manufacture time which only starts
from the time your Artwork is completed and
approved so the job is ready to go to print.
","Standard 10 working days","","",true,0.0,0,0,0); var pOptSel_20370_219_361 = new Selection(361,"Turnaround Time on PET Cards (Express)","Express 5 Working days turnaround. Please note
this is the manufacture time which only starts
from the time your Artwork is completed and
approved so the job is ready to go to print.
","Express 5 Working days","","",false,0.0,0,0,0); var pOptSel_20370_219_362 = new Selection(362,"Turnaround Time on PET Cards (Lightning Fast)","Lightning Fast 2 Days turnaround. No-one
else in this country can produce plastic cards
this fast - have your artwork ready and watch
us Go.
Please note this is the manufacture time which
only starts from the time your Artwork is completed
and approved so the job is ready to go to print.
","Urgent 2 Days (Art Ready)","","",false,0.0,0,0,0); var pOptSel_20370_227_385 = new Selection(385,"Plastic Gloss both sides","
Yes - Brilliant Gloss Protective Finish to
both sides of your cards ensures protection
of your images that won\'t rub off and your
Plastic Cards still look great after constant
long term use.
","Gloss finish both sides","","",true,0.0,0,0,0); var pOptSel_20370_227_386 = new Selection(386,"Plastic Gloss 1 side Matt 1 side","
Yes - Brilliant Gloss Protective Finish to
1 side & Matt writable finish to the other
is a great combination if you need to be
able to write on your Plastic business cards.
","Gloss 1 side Matt 1 side","","",false,0.0,0,0,0); var pOptSel_20370_227_387 = new Selection(387,"Plastic Matt both sides","
Yes - Matt finish to both sides of your
Plastic cards gives a unique look that
also allows you to write on the cards
but gives a protective finish that will
still look great after constant long
term use. 
","Matt finish both sides","","",false,0.0,0,0,0); var pOptSel_20370_204_388 = new Selection(388,"FREE DELIVERY Aust wide","
FREE DELIVERY AUSTRALIA WIDE 
We use TNT, FASTWAY & Express Post
for Free Overnight delivery to your work or home.
Please specify in the comments field if you have
a preference & please make sure someone is
there to accept the delivery.
","Overnight Free Delivery","","",true,0.0,0,0,0); var pOptSel_20370_204_389 = new Selection(389,"FREE DELIVERY Same Day Urgent","","Urgent VIP same day at additional cost","","",false,0.0,0,0,0); var pOpt_20370_98 = new Option(98,"Artwork Options","","Artwork Options","Artwork Options ","

Your selection is:

","DropDown","5","Design Option","-1","","1","Table","vertical","SingleLine","","","","1","0",0,[pOptSel_20370_98_110, pOptSel_20370_98_91, pOptSel_20370_98_97, pOptSel_20370_98_263],true); var pOpt_20370_196 = new Option(196,"B/C Plastic Card Thickness","","","Plastic Business Card thickness ","","DropDown","1","Base Modifier","-1","","1","Table","vertical","MultiLine","","","","1","0",0,[pOptSel_20370_196_287],true); var pOpt_20370_204 = new Option(204,"FREE DELIVERY Aust Wide","","","FREE DELIVERY Aust Wide ","","DropDown","-1","","-1","","1","Table","vertical","SingleLine","","","","1","0",0,[pOptSel_20370_204_388, pOptSel_20370_204_330, pOptSel_20370_204_389],true); var pOpt_20370_219 = new Option(219,"Turn Around Time PET Plastic Cards","","","Manufacture Time ","","DropDown","-1","","-1","","1","Table","vertical","SingleLine","","","","1","0",0,[pOptSel_20370_219_348, pOptSel_20370_219_361, pOptSel_20370_219_362],true); var pOpt_20370_227 = new Option(227,"Plastic Card Gloss or Matt Finish","","","Gloss or Matt finish ","","DropDown","-1","","-1","","1","Table","vertical","SingleLine","","","","1","0",0,[pOptSel_20370_227_385, pOptSel_20370_227_386, pOptSel_20370_227_387],true); var pq_144081_98_110 = new SelectionsPrice(98, 110, 0.000) var pq_144081_196_287 = new SelectionsPrice(196, 287, 0.000) var pq_144081_219_348 = new SelectionsPrice(219, 348, 0.000) var pq_144081_227_385 = new SelectionsPrice(227, 385, 0.000) var pq_144081_98_91 = new SelectionsPrice(98, 91, 0.000) var pq_144081_204_388 = new SelectionsPrice(204, 388, 0.000) var pq_144081_219_361 = new SelectionsPrice(219, 361, 30.000) var pq_144081_227_386 = new SelectionsPrice(227, 386, 18.000) var pq_144081_98_97 = new SelectionsPrice(98, 97, 90.000) var pq_144081_204_330 = new SelectionsPrice(204, 330, 0.000) var pq_144081_219_362 = new SelectionsPrice(219, 362, 39.000) var pq_144081_227_387 = new SelectionsPrice(227, 387, 36.000) var pq_144081_98_263 = new SelectionsPrice(98, 263, 40.000) var pq_144081_204_389 = new SelectionsPrice(204, 389, 0.000) var pq_144081 = new ProductQuantities(144081, 20370, 100, 99.7500, [pq_144081_98_110, pq_144081_196_287, pq_144081_219_348, pq_144081_227_385, pq_144081_98_91, pq_144081_204_388, pq_144081_219_361, pq_144081_227_386, pq_144081_98_97, pq_144081_204_330, pq_144081_219_362, pq_144081_227_387, pq_144081_98_263, pq_144081_204_389]); var pq_143780_98_110 = new SelectionsPrice(98, 110, 0.000) var pq_143780_196_287 = new SelectionsPrice(196, 287, 0.000) var pq_143780_219_348 = new SelectionsPrice(219, 348, 0.000) var pq_143780_227_385 = new SelectionsPrice(227, 385, 0.000) var pq_143780_98_91 = new SelectionsPrice(98, 91, 0.000) var pq_143780_204_388 = new SelectionsPrice(204, 388, 0.000) var pq_143780_219_361 = new SelectionsPrice(219, 361, 30.000) var pq_143780_227_386 = new SelectionsPrice(227, 386, 22.000) var pq_143780_98_97 = new SelectionsPrice(98, 97, 90.000) var pq_143780_204_330 = new SelectionsPrice(204, 330, 0.000) var pq_143780_219_362 = new SelectionsPrice(219, 362, 53.000) var pq_143780_227_387 = new SelectionsPrice(227, 387, 44.000) var pq_143780_98_263 = new SelectionsPrice(98, 263, 40.000) var pq_143780_204_389 = new SelectionsPrice(204, 389, 0.000) var pq_143780 = new ProductQuantities(143780, 20370, 250, 147.0000, [pq_143780_98_110, pq_143780_196_287, pq_143780_219_348, pq_143780_227_385, pq_143780_98_91, pq_143780_204_388, pq_143780_219_361, pq_143780_227_386, pq_143780_98_97, pq_143780_204_330, pq_143780_219_362, pq_143780_227_387, pq_143780_98_263, pq_143780_204_389]); var pq_143776_98_110 = new SelectionsPrice(98, 110, 0.000) var pq_143776_196_287 = new SelectionsPrice(196, 287, 0.000) var pq_143776_219_348 = new SelectionsPrice(219, 348, 0.000) var pq_143776_227_385 = new SelectionsPrice(227, 385, 0.000) var pq_143776_98_91 = new SelectionsPrice(98, 91, 0.000) var pq_143776_204_388 = new SelectionsPrice(204, 388, 0.000) var pq_143776_219_361 = new SelectionsPrice(219, 361, 40.000) var pq_143776_227_386 = new SelectionsPrice(227, 386, 31.000) var pq_143776_98_97 = new SelectionsPrice(98, 97, 90.000) var pq_143776_204_330 = new SelectionsPrice(204, 330, 0.000) var pq_143776_219_362 = new SelectionsPrice(219, 362, 75.000) var pq_143776_227_387 = new SelectionsPrice(227, 387, 62.000) var pq_143776_98_263 = new SelectionsPrice(98, 263, 40.000) var pq_143776_204_389 = new SelectionsPrice(204, 389, 0.000) var pq_143776 = new ProductQuantities(143776, 20370, 500, 170.0000, [pq_143776_98_110, pq_143776_196_287, pq_143776_219_348, pq_143776_227_385, pq_143776_98_91, pq_143776_204_388, pq_143776_219_361, pq_143776_227_386, pq_143776_98_97, pq_143776_204_330, pq_143776_219_362, pq_143776_227_387, pq_143776_98_263, pq_143776_204_389]); var pq_143777_98_110 = new SelectionsPrice(98, 110, 0.000) var pq_143777_196_287 = new SelectionsPrice(196, 287, 0.000) var pq_143777_219_348 = new SelectionsPrice(219, 348, 0.000) var pq_143777_227_385 = new SelectionsPrice(227, 385, 0.000) var pq_143777_98_91 = new SelectionsPrice(98, 91, 0.000) var pq_143777_204_388 = new SelectionsPrice(204, 388, 0.000) var pq_143777_219_361 = new SelectionsPrice(219, 361, 50.000) var pq_143777_227_386 = new SelectionsPrice(227, 386, 40.000) var pq_143777_98_97 = new SelectionsPrice(98, 97, 90.000) var pq_143777_204_330 = new SelectionsPrice(204, 330, 0.000) var pq_143777_219_362 = new SelectionsPrice(219, 362, 100.000) var pq_143777_227_387 = new SelectionsPrice(227, 387, 80.000) var pq_143777_98_263 = new SelectionsPrice(98, 263, 40.000) var pq_143777_204_389 = new SelectionsPrice(204, 389, 0.000) var pq_143777 = new ProductQuantities(143777, 20370, 1000, 198.5000, [pq_143777_98_110, pq_143777_196_287, pq_143777_219_348, pq_143777_227_385, pq_143777_98_91, pq_143777_204_388, pq_143777_219_361, pq_143777_227_386, pq_143777_98_97, pq_143777_204_330, pq_143777_219_362, pq_143777_227_387, pq_143777_98_263, pq_143777_204_389]); var pq_143778_98_110 = new SelectionsPrice(98, 110, 0.000) var pq_143778_196_287 = new SelectionsPrice(196, 287, 0.000) var pq_143778_219_348 = new SelectionsPrice(219, 348, 0.000) var pq_143778_227_385 = new SelectionsPrice(227, 385, 0.000) var pq_143778_98_91 = new SelectionsPrice(98, 91, 0.000) var pq_143778_204_388 = new SelectionsPrice(204, 388, 0.000) var pq_143778_219_361 = new SelectionsPrice(219, 361, 70.000) var pq_143778_227_386 = new SelectionsPrice(227, 386, 54.000) var pq_143778_98_97 = new SelectionsPrice(98, 97, 90.000) var pq_143778_204_330 = new SelectionsPrice(204, 330, 0.000) var pq_143778_219_362 = new SelectionsPrice(219, 362, 138.000) var pq_143778_227_387 = new SelectionsPrice(227, 387, 108.000) var pq_143778_98_263 = new SelectionsPrice(98, 263, 40.000) var pq_143778_204_389 = new SelectionsPrice(204, 389, 0.000) var pq_143778 = new ProductQuantities(143778, 20370, 2000, 362.0000, [pq_143778_98_110, pq_143778_196_287, pq_143778_219_348, pq_143778_227_385, pq_143778_98_91, pq_143778_204_388, pq_143778_219_361, pq_143778_227_386, pq_143778_98_97, pq_143778_204_330, pq_143778_219_362, pq_143778_227_387, pq_143778_98_263, pq_143778_204_389]); var pq_143781_98_110 = new SelectionsPrice(98, 110, 0.000) var pq_143781_196_287 = new SelectionsPrice(196, 287, 0.000) var pq_143781_219_348 = new SelectionsPrice(219, 348, 0.000) var pq_143781_227_385 = new SelectionsPrice(227, 385, 0.000) var pq_143781_98_91 = new SelectionsPrice(98, 91, 0.000) var pq_143781_204_388 = new SelectionsPrice(204, 388, 0.000) var pq_143781_219_361 = new SelectionsPrice(219, 361, 86.000) var pq_143781_227_386 = new SelectionsPrice(227, 386, 68.000) var pq_143781_98_97 = new SelectionsPrice(98, 97, 90.000) var pq_143781_204_330 = new SelectionsPrice(204, 330, 0.000) var pq_143781_219_362 = new SelectionsPrice(219, 362, 201.000) var pq_143781_227_387 = new SelectionsPrice(227, 387, 136.000) var pq_143781_98_263 = new SelectionsPrice(98, 263, 40.000) var pq_143781_204_389 = new SelectionsPrice(204, 389, 0.000) var pq_143781 = new ProductQuantities(143781, 20370, 3000, 526.0000, [pq_143781_98_110, pq_143781_196_287, pq_143781_219_348, pq_143781_227_385, pq_143781_98_91, pq_143781_204_388, pq_143781_219_361, pq_143781_227_386, pq_143781_98_97, pq_143781_204_330, pq_143781_219_362, pq_143781_227_387, pq_143781_98_263, pq_143781_204_389]); var pq_143789_98_110 = new SelectionsPrice(98, 110, 0.000) var pq_143789_196_287 = new SelectionsPrice(196, 287, 0.000) var pq_143789_219_348 = new SelectionsPrice(219, 348, 0.000) var pq_143789_227_385 = new SelectionsPrice(227, 385, 0.000) var pq_143789_98_91 = new SelectionsPrice(98, 91, 0.000) var pq_143789_204_388 = new SelectionsPrice(204, 388, 0.000) var pq_143789_219_361 = new SelectionsPrice(219, 361, 113.000) var pq_143789_227_386 = new SelectionsPrice(227, 386, 83.000) var pq_143789_98_97 = new SelectionsPrice(98, 97, 90.000) var pq_143789_204_330 = new SelectionsPrice(204, 330, 0.000) var pq_143789_219_362 = new SelectionsPrice(219, 362, 264.000) var pq_143789_227_387 = new SelectionsPrice(227, 387, 166.000) var pq_143789_98_263 = new SelectionsPrice(98, 263, 40.000) var pq_143789_204_389 = new SelectionsPrice(204, 389, 0.000) var pq_143789 = new ProductQuantities(143789, 20370, 4000, 614.0000, [pq_143789_98_110, pq_143789_196_287, pq_143789_219_348, pq_143789_227_385, pq_143789_98_91, pq_143789_204_388, pq_143789_219_361, pq_143789_227_386, pq_143789_98_97, pq_143789_204_330, pq_143789_219_362, pq_143789_227_387, pq_143789_98_263, pq_143789_204_389]); var pq_143779_98_110 = new SelectionsPrice(98, 110, 0.000) var pq_143779_196_287 = new SelectionsPrice(196, 287, 0.000) var pq_143779_219_348 = new SelectionsPrice(219, 348, 0.000) var pq_143779_227_385 = new SelectionsPrice(227, 385, 0.000) var pq_143779_98_91 = new SelectionsPrice(98, 91, 0.000) var pq_143779_204_388 = new SelectionsPrice(204, 388, 0.000) var pq_143779_219_361 = new SelectionsPrice(219, 361, 141.000) var pq_143779_227_386 = new SelectionsPrice(227, 386, 95.000) var pq_143779_98_97 = new SelectionsPrice(98, 97, 90.000) var pq_143779_204_330 = new SelectionsPrice(204, 330, 0.000) var pq_143779_219_362 = new SelectionsPrice(219, 362, 329.000) var pq_143779_227_387 = new SelectionsPrice(227, 387, 190.000) var pq_143779_98_263 = new SelectionsPrice(98, 263, 40.000) var pq_143779_204_389 = new SelectionsPrice(204, 389, 0.000) var pq_143779 = new ProductQuantities(143779, 20370, 5000, 776.0000, [pq_143779_98_110, pq_143779_196_287, pq_143779_219_348, pq_143779_227_385, pq_143779_98_91, pq_143779_204_388, pq_143779_219_361, pq_143779_227_386, pq_143779_98_97, pq_143779_204_330, pq_143779_219_362, pq_143779_227_387, pq_143779_98_263, pq_143779_204_389]); var pq_143790_98_110 = new SelectionsPrice(98, 110, 0.000) var pq_143790_196_287 = new SelectionsPrice(196, 287, 0.000) var pq_143790_219_348 = new SelectionsPrice(219, 348, 0.000) var pq_143790_227_385 = new SelectionsPrice(227, 385, 0.000) var pq_143790_98_91 = new SelectionsPrice(98, 91, 0.000) var pq_143790_204_388 = new SelectionsPrice(204, 388, 0.000) var pq_143790_219_361 = new SelectionsPrice(219, 361, 248.000) var pq_143790_227_386 = new SelectionsPrice(227, 386, 180.000) var pq_143790_98_97 = new SelectionsPrice(98, 97, 90.000) var pq_143790_204_330 = new SelectionsPrice(204, 330, 0.000) var pq_143790_219_362 = new SelectionsPrice(219, 362, 578.000) var pq_143790_227_387 = new SelectionsPrice(227, 387, 360.000) var pq_143790_98_263 = new SelectionsPrice(98, 263, 40.000) var pq_143790_204_389 = new SelectionsPrice(204, 389, 0.000) var pq_143790 = new ProductQuantities(143790, 20370, 10000, 1619.0000, [pq_143790_98_110, pq_143790_196_287, pq_143790_219_348, pq_143790_227_385, pq_143790_98_91, pq_143790_204_388, pq_143790_219_361, pq_143790_227_386, pq_143790_98_97, pq_143790_204_330, pq_143790_219_362, pq_143790_227_387, pq_143790_98_263, pq_143790_204_389]); var pq_143910_98_110 = new SelectionsPrice(98, 110, 0.000) var pq_143910_196_287 = new SelectionsPrice(196, 287, 0.000) var pq_143910_219_348 = new SelectionsPrice(219, 348, 0.000) var pq_143910_227_385 = new SelectionsPrice(227, 385, 0.000) var pq_143910_98_91 = new SelectionsPrice(98, 91, 0.000) var pq_143910_204_388 = new SelectionsPrice(204, 388, 0.000) var pq_143910_219_361 = new SelectionsPrice(219, 361, 435.000) var pq_143910_227_386 = new SelectionsPrice(227, 386, 360.000) var pq_143910_98_97 = new SelectionsPrice(98, 97, 90.000) var pq_143910_204_330 = new SelectionsPrice(204, 330, 0.000) var pq_143910_219_362 = new SelectionsPrice(219, 362, 1015.000) var pq_143910_227_387 = new SelectionsPrice(227, 387, 720.000) var pq_143910_98_263 = new SelectionsPrice(98, 263, 40.000) var pq_143910_204_389 = new SelectionsPrice(204, 389, 0.000) var pq_143910 = new ProductQuantities(143910, 20370, 20000, 2688.0000, [pq_143910_98_110, pq_143910_196_287, pq_143910_219_348, pq_143910_227_385, pq_143910_98_91, pq_143910_204_388, pq_143910_219_361, pq_143910_227_386, pq_143910_98_97, pq_143910_204_330, pq_143910_219_362, pq_143910_227_387, pq_143910_98_263, pq_143910_204_389]); var p_20370 = new Product(20370, "PLASTIC BUSINESS cards - YES we print in Australia YES we have the fastest turnaround YES we Guarantee the lowest Prices & will beat any written quote", [pq_144081, pq_143780, pq_143776, pq_143777, pq_143778, pq_143781, pq_143789, pq_143779, pq_143790, pq_143910], [pOpt_20370_196, pOpt_20370_227, pOpt_20370_98, pOpt_20370_219, pOpt_20370_204], [], [],[],[false]); var prodGroup = new ProductGroup("Plastic Business Cards ", [], [], [], []); //alert(pgGrpOpt_74.selections[2].name); // 4.Create products // 4.1.Add All Selections (by ID) // 4.2.Add All Options (by ID) // 2.3. Create Selection Arrays for each product Quantity // 2.4. Create Option Constructor // 4.5. Create Array of Product Options // 4.6. Create Array of Product Option Dependencies // 4.7. Create Array of Option Qty Excludes // 4.5. Create Array of Product Quantities // 4.8. Create // 0.Create initial config Settings var ConfigSettings = new ConfigSettings(94, 20370, p_20370, 144081, pq_144081); function ConfigSettings(productGroupID, productID, objProduct, productQuantityID, productQuantity) { this.productGroupID = productGroupID; this.productID = productID; this.product = objProduct; this.productQuantityID = productQuantityID; this.productQuantity = productQuantity; // Addl Ptr to prodGroup Obj this.prodGroup = prodGroup; // Base Product Quantity ID this.baseProductQuantityID = productQuantityID; this.baseProdTimeSelectionID = 0; this.basePriceWithTurnAround = 0; } function ProductQuantities(ID, productID, quantity, basePrice, selectionsPrice) { this.ID = ID; this.productID = productID; this.quantity = quantity; this.basePrice = basePrice; this.selectionsPrice = selectionsPrice; this.PriceForSelection=function GetPriceForSelection(pqID, OptionID, SelectionID) { //alert("pq_" + pqID.toString() + "_" + OptionID.toString() + "_" + SelectionID.toString()); return eval("pq_" + pqID.toString() + "_" + OptionID.toString() + "_" + SelectionID.toString()).price; /* for (i = 0; i < this.selectionsPrice.length; i++) { alert(this.selectionsPrice[i].OptionID.toString if ((this.selectionsPrice[i].OptionID == OptionID) && (this.selectionsPrice[i].SelectionID == SelectionID)) return this.selectionsPrice[i].Price; } return null; */ } } function SelectionsPrice(OptionID,SelectionID,Price) { this.optionID=OptionID; this.selectionID=SelectionID; this.price=Price; } function Product(ID, name, quantities, options, optionDepends, optionQtyExludes,turnArounds,doNotAllowDiscount) { this.ID = ID; this.name = name; this.quantities = quantities; this.options = options; this.optionDepends = optionDepends; this.optionQtyExcludes = optionQtyExludes; this.turnArounds=turnArounds; this.doNotAllowDiscount=doNotAllowDiscount; Product.prototype.GetQuantityObj=function (Qty) { var vClosestObj = null; var vCurrentClosestDiff = 99999999; for (z=0; z < this.quantities.length; z++) { if (this.quantities[z].quantity==Qty) { return this.quantities[z] } if (vClosestObj == null) { vClosestObj = this.quantities[z]; vCurrentClosestDiff = Math.abs(vClosestObj.quantity-Qty) } else { if (Math.abs(vClosestObj.quantity-Qty) < vCurrentClosestDiff) { vClosestObj = this.quantities[z]; vCurrentClosestDiff = Math.abs(vClosestObj.quantity-Qty) } } } return vClosestObj; } } function Option(ID, name, notes, description, displayTitle, displayDescription, type, role, roleName, subRole, subRoleName, repeatColumns, repeatLayout, repeatDirection, textMode, width, height, defaultText, required, maxLength, readOnly, selections, DisplayInItemizedData) { this.ID = ID; this.name = name; this.notes = notes; this.description = description; this.displayTitle = displayTitle; this.displayDescription = displayDescription; this.type = type; this.role = role; this.roleName = roleName; this.subRole = subRole; this.subRoleName = subRoleName; this.repeatColumns = repeatColumns; this.repeatDirection = repeatDirection; this.repeatLayout = repeatLayout; this.textMode = textMode; this.width = width; this.height = height; this.defaultText = defaultText; this.required = required; this.maxLength = maxLength; this.readOnly = readOnly; this.selections = selections; this.isVisible=false; this.DisplayInItemizedData=DisplayInItemizedData; } function Selection(selectionID, name, description, title, image, suffix, isDefault, price, printedPages, width, height) { this.selectionID = selectionID; this.name = name; this.description = description; this.title = title; this.image = image; this.suffix = suffix; this.isDefault = isDefault; this.price = price; this.printedPages = printedPages; this.width = width; this.height = height; } // Product TurnAround function TurnAround(ID, name, description, type, amount, TurnAroundQtys ){ this.ID = ID; this.name = name; this.type = type; this.amount = amount; this.description = description; this.TurnAroundQtys=TurnAroundQtys; } function TurnAroundQty(ID,Cost,TurnAroundID,ExcludeTurnAround) { this.ID=ID; this.Cost=Cost; this.TurnAroundID=TurnAroundID; this.ExcludeTurnAround=ExcludeTurnAround; } // Product Group function ProductGroup(name, products, productGroupOptions, productOptionAssigns, productOptionDepends) { this.name = ""; this.products = products; this.productGroupOptions = productGroupOptions; this.productOptionAssigns = productOptionAssigns; this.productOptionDepends = productOptionDepends; } function ProductOptionAssign(ID, productID, optionID, selectionID) { this.ID = ID; this.productID = productID; this.optionID = optionID; this.selectionID = selectionID; } // Product Option Dependencies function ProductOptionDependencies(optionID, requiresOptionID, requiresSelectionID, checkboxValue) { this.optionID = optionID; this.requiresOptionID = requiresOptionID; this.requiresSelectionID = requiresSelectionID; this.checkboxValue = checkboxValue; } // Product Option Qty Dependencies function ProductOptionQtyDependencies(optionID, qtyID, qty) { this.optionID = optionID; this.qtyID = qtyID; this.qty = qty; } // Product Option Qty Dependencies function OptionQtyExcludes(productID, optionID, qty) { this.productID = productID; this.optionID = optionID; this.qty = qty; } function SelectedSelections(OptionID, SelectionID) { this.optionID=OptionID; this.selectionID=SelectionID; } /* function _CurrentGroupSelections() { this.selected = []; _CurrentGroupSelections.prototype.UpdateSelection = function SetSelection(OptionID, SelectionID) { var bFound = false; for (i = 0; i < this.selected.length; i++) { if (this.selected[i].optionID == OptionID) { this.selected[i].selectionID = SelectionID; bFound = true; } } if (bFound == false) { var vNewObj = new SelectedSelections(OptionID, SelectionID); this.selected.push(vNewObj); //this.UpdateOptionPrice(); } } // Get Selected Value for given OptionID _CurrentGroupSelections.prototype.GetSelected = function GetSelectedOptionID(OptionID) { for (var x = 0; x < this.selected.length; x++) { if (this.selected[x].optionID == OptionID) { return this.selected[x].selectionID; } } return -1; } // Get "|" Selection String _CurrentGroupSelections.prototype.SelectionString = function GetSelections() { var vStr = "|"; for (i = 0; i < this.selected.length; i++) { vStr += this.selected[i].optionID.toString() + "_" + this.selected[i].selectionID.toString() + "|" } return vStr; } } */ function _CurrentSelections() { this.selected = []; //to update check box selections _CurrentSelections.prototype.UpdateChkSelection = function SetChkSelection(OptionID, SelectionID) { var check=1; //will loop through and check if its already selected ot not if selected will make it -1 for unchecking it, if not selection does not exists for (i = 0; i < this.selected.length; i++) { if (this.selected[i].optionID == OptionID) { if(this.selected[i].selectionID == SelectionID){ //alert("here"); this.selected[i].selectionID =-1; return; check=0; } else { check=1; } } } //alert(check); //will check if first selection is -1 or not if -1 it will replace the first selection if(check==1){ for (i = 0; i < this.selected.length; i++) { if (this.selected[i].optionID == OptionID) { if(this.selected[i].selectionID == -1){ this.selected[i].selectionID =SelectionID; return; check=0; } } } } //if selection does not exist or first one is not -1 then it will add a new row. if(check==1){ var vNewObj = new SelectedSelections(OptionID, SelectionID); this.selected.push(vNewObj); } } _CurrentSelections.prototype.GetChkSelected = function GetChkSelectedOptionID(OptionID) { var vStr = "|"; for (var x = 0; x < this.selected.length; x++) { if (this.selected[x].optionID == OptionID) { vStr=vStr + this.selected[x].selectionID +"|"; } } return vStr; } _CurrentSelections.prototype.UpdateSelection = function SetSelection(OptionID, SelectionID) { var bFound = false; for (i = 0; i < this.selected.length; i++) { if (this.selected[i].optionID == OptionID) { this.selected[i].selectionID = SelectionID; for (j = 0; j < ConfigSettings.product.options.length; j++) { if((ConfigSettings.product.options[j].ID==OptionID)&&(ConfigSettings.product.options[j].type=='TextBox')) { if (ConfigSettings.product.options[j].selections[0].selectionID==SelectionID){ this.selected[i].selectionID = ' '; } } } //alert(OptionID.toString() + ":::" + SelectionID.toString()); bFound = true; } } if (bFound == false) { var vNewObj = new SelectedSelections(OptionID, SelectionID); this.selected.push(vNewObj); //this.UpdateOptionPrice(); } } // Get Selected Value for given OptionID _CurrentSelections.prototype.GetSelected = function GetSelectedOptionID(OptionID) { for (var x = 0; x < this.selected.length; x++) { if (this.selected[x].optionID == OptionID) { return this.selected[x].selectionID; } } return -1; } // Get "|" Selection String _CurrentSelections.prototype.SelectionString = function GetSelections() { var vStr = "|"; for (i = 0; i < this.selected.length; i++) { for (j = 0; j < ConfigSettings.product.options.length; j++) { if(ConfigSettings.product.options[j].ID==this.selected[i].optionID){ if(ConfigSettings.product.options[j].isVisible==true){ vStr += this.selected[i].optionID.toString() + "_" + this.selected[i].selectionID.toString() + "|" } } } } return vStr; } // Build Display Option HTML String for Selected Options _CurrentSelections.prototype.DisplayOptionsString = function GetDisplayOptionsString() { var vStr = ""; //alert(ConfigSettings.product.options.length); for (j = 0; j < ConfigSettings.product.options.length; j++) { var vSelSelectionID = this.GetSelected(ConfigSettings.product.options[j].ID); if (1==1) {//(ConfigSettings.product.options[j].role != 5) { if ((vSelSelectionID > -1) && (ConfigSettings.product.options[j].role != 2) && (ConfigSettings.product.options[j].isVisible==true)) { //alert(ConfigSettings.product.options[j].ID.toString() + ":" + this.GetSelected(ConfigSettings.product.options[j].ID).toString()); //alert("pq_"+ ConfigSettings.productQuantityID + "_" + ConfigSettings.product.options[j].ID.toString() + "_" + vSelSelectionID.toString()); var vPQ = eval("pq_"+ ConfigSettings.productQuantityID + "_" + ConfigSettings.product.options[j].ID.toString() + "_" + vSelSelectionID.toString()); var vSel = eval("pOptSel_" + ConfigSettings.productID.toString() + "_" + ConfigSettings.product.options[j].ID.toString() + "_" + vSelSelectionID.toString()); if (vPQ.price > 0) vStr += "
" + vSel.title + "
$" + CurrencyFormatted(GetPriceBySize(vPQ.price)) + "
" } } // else { // Role 5 -- Finishing OPtions // if ((vSelSelectionID > -1) && (ConfigSettings.product.options[j].isVisible==true)) { // //alert(ConfigSettings.product.options[j].role); // //alert(ConfigSettings.product.options[j].ID.toString() + ":" + this.GetSelected(ConfigSettings.product.options[j].ID).toString()); // //alert("pq_"+ ConfigSettings.productQuantityID + "_" + ConfigSettings.product.options[j].ID.toString() + "_" + vSelSelectionID.toString()); // var vPQ = eval("pq_"+ ConfigSettings.productQuantityID + "_" + ConfigSettings.product.options[j].ID.toString() + "_" + vSelSelectionID.toString()); // var vSel = eval("pOptSel_" + ConfigSettings.productID.toString() + "_" + ConfigSettings.product.options[j].ID.toString() + "_" + vSelSelectionID.toString()); // var vCalcPrice = GetBannerOptionPrice(ConfigSettings.product.options[j], vPQ.price); // if (vCalcPrice > 0) // vStr += "
" + vSel.title + "
$" + CurrencyFormatted(vCalcPrice) + "
" // } // } } return vStr; } _CurrentSelections.prototype.SetOptionPriceRows = function SetOptionPriceRowsDisplay(tbl,QtyH, CSymbol) { var vStr = ""; //alert(ConfigSettings.product.options.length); for (j = 0; j < ConfigSettings.product.options.length; j++) { var vSelSelectionID = this.GetSelected(ConfigSettings.product.options[j].ID); if (1==1) {//(ConfigSettings.product.options[j].role != 5) { if ((vSelSelectionID > -1) && (ConfigSettings.product.options[j].role != 2) && (ConfigSettings.product.options[j].isVisible==true) && (ConfigSettings.product.options[j].type!='TextBox')) { //alert(ConfigSettings.product.options[j].ID.toString() + ":" + this.GetSelected(ConfigSettings.product.options[j].ID).toString()); //alert("pq_"+ ConfigSettings.productQuantityID + "_" + ConfigSettings.product.options[j].ID.toString() + "_" + vSelSelectionID.toString()); var vPQ = eval("pq_"+ ConfigSettings.productQuantityID + "_" + ConfigSettings.product.options[j].ID.toString() + "_" + vSelSelectionID.toString()); //alert('123'); //alert("pq_"+ QtyH+ "_" + ConfigSettings.product.options[j].ID.toString() + "_" + vSelSelectionID.toString()); if(QtyH>0) { var vPQH = eval("pq_"+ QtyH+ "_" + ConfigSettings.product.options[j].ID.toString() + "_" + vSelSelectionID.toString()); //alert(vPQH); } //alert(vPQH); var vSel = eval("pOptSel_" + ConfigSettings.productID.toString() + "_" + ConfigSettings.product.options[j].ID.toString() + "_" + vSelSelectionID.toString()); //if (vPQ.price > 0) { //alert(vSel.DisplayInItemizedData.toString()+" "+vSelSelectionID.toString()); //alert(ConfigSettings.product.options[j].DisplayInItemizedData); if(ConfigSettings.product.options[j].DisplayInItemizedData==true ){ var row = tbl.insertRow(tbl.rows.length); var cell1 = document.createElement("TH"); var cell2 = document.createElement("TD"); var bold1 = document.createElement("B"); var textnode1a = document.createTextNode(ConfigSettings.product.options[j].displayTitle + ": "); var textnode1b = document.createTextNode(vSel.title); if(QtyH>0) { var textnode2 = document.createTextNode(CSymbol + CurrencyFormatted(GetPriceBySize(vPQ.price,vPQH.price))); } else var textnode2 = document.createTextNode(CSymbol + CurrencyFormatted(GetPriceBySize(vPQ.price,0))); bold1.appendChild(textnode1a); cell1.appendChild(bold1); cell1.appendChild(textnode1b); cell2.appendChild(textnode2); row.appendChild(cell1); row.appendChild(cell2); //vStr += "
" + vSel.title + "
$" + CurrencyFormatted(GetPriceBySize(vPQ.price)) + "
" } } else if ((vSelSelectionID > -1) && (ConfigSettings.product.options[j].role == 2) && (ConfigSettings.product.options[j].isVisible==true)) { //alert(ConfigSettings.product.options[j].ID.toString() + ":" + this.GetSelected(ConfigSettings.product.options[j].ID).toString()); //alert("pq_"+ ConfigSettings.productQuantityID + "_" + ConfigSettings.product.options[j].ID.toString() + "_" + vSelSelectionID.toString()); var vPQ = eval("pq_"+ ConfigSettings.productQuantityID + "_" + ConfigSettings.product.options[j].ID.toString() + "_" + vSelSelectionID.toString()); if(QtyH>0) { var vPQH = eval("pq_"+ QtyH+ "_" + ConfigSettings.product.options[j].ID.toString() + "_" + vSelSelectionID.toString()); //alert(vPQH); } var vSel = eval("pOptSel_" + ConfigSettings.productID.toString() + "_" + ConfigSettings.product.options[j].ID.toString() + "_" + vSelSelectionID.toString()); //alert(vPQ.price); //if (vPQ.price > 0) { if(ConfigSettings.product.options[j].DisplayInItemizedData==true ){ var row = tbl.insertRow(tbl.rows.length); var cell1 = document.createElement("TH"); var cell2 = document.createElement("TD"); var textnode1 = document.createTextNode(ConfigSettings.product.options[j].displayTitle + ": " + vSel.title); if(QtyH>0) { var textnode2 = document.createTextNode(CSymbol + CurrencyFormatted(GetPriceBySize(vPQ.price,vPQH.price))); } else var textnode2 = document.createTextNode(CSymbol + CurrencyFormatted(GetPriceBySize(vPQ.price))); cell1.appendChild(textnode1); cell2.appendChild(textnode2); row.appendChild(cell1); row.appendChild(cell2); //vStr += "
" + vSel.title + "
$" + CurrencyFormatted(GetPriceBySize(vPQ.price)) + "
" } } } // else { // Role 5 -- Finishing OPtions // if ((vSelSelectionID > -1) && (ConfigSettings.product.options[j].isVisible==true)) { // //alert(ConfigSettings.product.options[j].role); // //alert(ConfigSettings.product.options[j].ID.toString() + ":" + this.GetSelected(ConfigSettings.product.options[j].ID).toString()); // //alert("pq_"+ ConfigSettings.productQuantityID + "_" + ConfigSettings.product.options[j].ID.toString() + "_" + vSelSelectionID.toString()); // var vPQ = eval("pq_"+ ConfigSettings.productQuantityID + "_" + ConfigSettings.product.options[j].ID.toString() + "_" + vSelSelectionID.toString()); // var vSel = eval("pOptSel_" + ConfigSettings.productID.toString() + "_" + ConfigSettings.product.options[j].ID.toString() + "_" + vSelSelectionID.toString()); // var vCalcPrice = GetBannerOptionPrice(ConfigSettings.product.options[j], vPQ.price); // if (vCalcPrice > 0) { // var row = tbl.insertRow(tbl.rows.length); // var cell1 = document.createElement("TH"); // var cell2 = document.createElement("TD"); // var textnode1 = document.createTextNode(vSel.title); // var textnode2 = document.createTextNode("$" + CurrencyFormatted(vCalcPrice)); // cell1.appendChild(textnode1); // cell2.appendChild(textnode2); // row.appendChild(cell1); // row.appendChild(cell2); // // //vStr += "
" + vSel.title + "
$" + CurrencyFormatted(vCalcPrice) + "
" // } // } // } } return vStr; } _CurrentSelections.prototype.SetOptionPriceRowsOld = function SetOptionPriceRowsDisplayOLD(tbl) { var vStr = ""; //alert(ConfigSettings.product.options.length); for (j = 0; j < ConfigSettings.product.options.length; j++) { var vSelSelectionID = this.GetSelected(ConfigSettings.product.options[j].ID); if (1==1) {//(ConfigSettings.product.options[j].role != 5) { if ((vSelSelectionID > -1) && (ConfigSettings.product.options[j].role != 2) && (ConfigSettings.product.options[j].isVisible==true)) { //alert(ConfigSettings.product.options[j].ID.toString() + ":" + this.GetSelected(ConfigSettings.product.options[j].ID).toString()); //alert("pq_"+ ConfigSettings.productQuantityID + "_" + ConfigSettings.product.options[j].ID.toString() + "_" + vSelSelectionID.toString()); var vPQ = eval("pq_"+ ConfigSettings.productQuantityID + "_" + ConfigSettings.product.options[j].ID.toString() + "_" + vSelSelectionID.toString()); var vSel = eval("pOptSel_" + ConfigSettings.productID.toString() + "_" + ConfigSettings.product.options[j].ID.toString() + "_" + vSelSelectionID.toString()); if (vPQ.price > 0) { var row = tbl.insertRow(tbl.rows.length); var cell1 = document.createElement("TH"); var cell2 = document.createElement("TD"); var textnode1 = document.createTextNode(ConfigSettings.product.options[j].displayTitle + vSel.title); var textnode2 = document.createTextNode("$" + CurrencyFormatted(GetPriceBySize(vPQ.price))); cell1.appendChild(textnode1); cell2.appendChild(textnode2); row.appendChild(cell1); row.appendChild(cell2); //vStr += "
" + vSel.title + "
$" + CurrencyFormatted(GetPriceBySize(vPQ.price)) + "
" } } else if ((vSelSelectionID > -1) && (ConfigSettings.product.options[j].role == 2) && (ConfigSettings.product.options[j].isVisible==true)) { //alert(ConfigSettings.product.options[j].ID.toString() + ":" + this.GetSelected(ConfigSettings.product.options[j].ID).toString()); //alert("pq_"+ ConfigSettings.productQuantityID + "_" + ConfigSettings.product.options[j].ID.toString() + "_" + vSelSelectionID.toString()); var vPQ = eval("pq_"+ ConfigSettings.productQuantityID + "_" + ConfigSettings.product.options[j].ID.toString() + "_" + vSelSelectionID.toString()); var vSel = eval("pOptSel_" + ConfigSettings.productID.toString() + "_" + ConfigSettings.product.options[j].ID.toString() + "_" + vSelSelectionID.toString()); //alert(vPQ.price); if (vPQ.price > 0) { var row = tbl.insertRow(tbl.rows.length); var cell1 = document.createElement("TH"); var cell2 = document.createElement("TD"); var textnode1 = document.createTextNode(ConfigSettings.product.options[j].displayTitle + ": " + vSel.title); var textnode2 = document.createTextNode("$" + CurrencyFormatted(GetPriceBySize(vPQ.price))); cell1.appendChild(textnode1); cell2.appendChild(textnode2); row.appendChild(cell1); row.appendChild(cell2); //vStr += "
" + vSel.title + "
$" + CurrencyFormatted(GetPriceBySize(vPQ.price)) + "
" } } } // else { // Role 5 -- Finishing OPtions // if ((vSelSelectionID > -1) && (ConfigSettings.product.options[j].isVisible==true)) { // //alert(ConfigSettings.product.options[j].role); // //alert(ConfigSettings.product.options[j].ID.toString() + ":" + this.GetSelected(ConfigSettings.product.options[j].ID).toString()); // //alert("pq_"+ ConfigSettings.productQuantityID + "_" + ConfigSettings.product.options[j].ID.toString() + "_" + vSelSelectionID.toString()); // var vPQ = eval("pq_"+ ConfigSettings.productQuantityID + "_" + ConfigSettings.product.options[j].ID.toString() + "_" + vSelSelectionID.toString()); // var vSel = eval("pOptSel_" + ConfigSettings.productID.toString() + "_" + ConfigSettings.product.options[j].ID.toString() + "_" + vSelSelectionID.toString()); // var vCalcPrice = GetBannerOptionPrice(ConfigSettings.product.options[j], vPQ.price); // if (vCalcPrice > 0) { // var row = tbl.insertRow(tbl.rows.length); // var cell1 = document.createElement("TH"); // var cell2 = document.createElement("TD"); // var textnode1 = document.createTextNode(vSel.title); // var textnode2 = document.createTextNode("$" + CurrencyFormatted(vCalcPrice)); // cell1.appendChild(textnode1); // cell2.appendChild(textnode2); // row.appendChild(cell1); // row.appendChild(cell2); // // //vStr += "
" + vSel.title + "
$" + CurrencyFormatted(vCalcPrice) + "
" // } // } // } } return vStr; } this.GetOptionPrice = function GetOptionPrice (QtyH) { var vOptionPrice = 0.0; for (j = 0; j < ConfigSettings.product.options.length; j++) { var vSelSelectionID = this.GetSelected(ConfigSettings.product.options[j].ID); //if ((ConfigSettings.product.options[j].role != 5) && (ConfigSettings.product.options[j].isVisible==true)) { //alert(ConfigSettings.product.options[j].ID); //alert(ConfigSettings.product.options[j].isVisible); if (vSelSelectionID == -1) { // get default var selCnt = ConfigSettings.product.options[j].selections.length; for (var selIndex = 0; selIndex < selCnt; selIndex++) { if (ConfigSettings.product.options[j].selections[selIndex].isDefault == true) { vSelSelectionID = ConfigSettings.product.options[j].selections[selIndex].selectionID; continue; } } } if ((ConfigSettings.product.options[j].isVisible==true)&& (ConfigSettings.product.options[j].type != 'TextBox') ){ if (vSelSelectionID > -1) { var vPQ = eval("pq_"+ ConfigSettings.productQuantityID + "_" + ConfigSettings.product.options[j].ID.toString() + "_" + vSelSelectionID.toString()); if(QtyH>0) { var vPQH = eval("pq_"+ QtyH+ "_" + ConfigSettings.product.options[j].ID.toString() + "_" + vSelSelectionID.toString()); //alert(vPQH); } if(QtyH>0) vOptionPrice +=GetPriceBySize(vPQ.price,vPQH.price); else vOptionPrice += vPQ.price; } } // else if ((ConfigSettings.product.options[j].role == 5) && (ConfigSettings.product.options[j].isVisible==true)) { // Role 5 -- Finishing OPtions // // if (vSelSelectionID > -1) { // //alert(ConfigSettings.product.options[j].role); // //alert(ConfigSettings.product.options[j].ID.toString() + ":" + this.GetSelected(ConfigSettings.product.options[j].ID).toString()); // //alert("pq_"+ ConfigSettings.productQuantityID + "_" + ConfigSettings.product.options[j].ID.toString() + "_" + vSelSelectionID.toString()); // var vPQ = eval("pq_"+ ConfigSettings.productQuantityID + "_" + ConfigSettings.product.options[j].ID.toString() + "_" + vSelSelectionID.toString()); // var vCalcPrice = GetBannerOptionPrice(ConfigSettings.product.options[j], vPQ.price); // vOptionPrice += vCalcPrice; // } // } } return vOptionPrice; } } function GetBannerOptionPrice(option, unitPrice) { if (option.subRoleName == "Grommets") { //alert(GetGrommetCount()); //alert(unitPrice); return unitPrice * GetGrommetCount(); } else if (option.subRoleName == "Webbing") { return unitPrice * GetWebbingLength(); } else if (option.subRoleName == "Pole Pockets") { return unitPrice * GetPolePocketsLength(); } else if (option.subRoleName == "Rope") { return unitPrice * GetRopeLength(); } else if (option.subRoleName == "Sewing") { return unitPrice * GetSewingLength(); } else if (option.subRoleName == "3/4\" Velcro") { return unitPrice * GetVelcro3Length(); } else if (option.subRoleName == "2\" Velcro") { return unitPrice * GetVelcro2Length(); } //else //alert(option.subRoleName); } var currentSelections = new _CurrentSelections(); var currentGroupSelections = new _CurrentSelections(); function SetCurrentGroupSelections() { //alert('abc'); for (z=0; z < prodGroup.productGroupOptions.length; z++) { var OptionID = prodGroup.productGroupOptions[z].ID; var obj = document.getElementById("grpopt_" + OptionID.toString()); //alert(obj); //alert("opt_" + OptionID.toString()); if (obj) { if (prodGroup.productGroupOptions[z].type == "DropDown") { var SelectionID = obj.options[obj.selectedIndex].value; currentGroupSelections.UpdateSelection(OptionID, SelectionID); } } } //alert(currentGroupSelections.SelectionString()); } function SetCurrentSelections() { //alert(ConfigSettings.product.options.length); for (z=0; z < ConfigSettings.product.options.length; z++) { var OptionID = ConfigSettings.product.options[z].ID; //alert(OptionID.toString() + ":" + currentSelections.GetSelected(OptionID).toString()) if (currentSelections.GetSelected(OptionID) == -1) { //alert(ConfigSettings.product.options[z].selections); if (ConfigSettings.product.options[z].selections) { for (y=0; y < ConfigSettings.product.options[z].selections.length; y++) { if (ConfigSettings.product.options[z].selections[y].isDefault == true) { //alert(OptionID.toString() + ":" + ConfigSettings.product.options[z].selections[y].selectionID.toString()); currentSelections.UpdateSelection(OptionID, ConfigSettings.product.options[z].selections[y].selectionID); y=99999; } } } else { currentSelections.UpdateSelection(OptionID, ConfigSettings.product.options[z].defaultText); } } } //alert(currentSelections.SelectionString()); } function CurrencyFormatted(amount) { var i = parseFloat(amount.toString().replace("$","")); if(isNaN(i)) { i = 0.00; } var minus = ''; if(i < 0) { minus = '-'; } i = Math.abs(i); i = parseInt((i + .005) * 100); i = i / 100; s = new String(i); if(s.indexOf('.') < 0) { s += '.00'; } if(s.indexOf('.') == (s.length - 2)) { s += '0'; } s = minus + s; return CommaFormatted(s); } // end of function CurrencyFormatted() function CommaFormatted(amount) { var delimiter = ","; // replace comma if desired var a = amount.split('.',2) var d = a[1]; var i = parseInt(a[0]); if(isNaN(i)) { return ''; } var minus = ''; if(i < 0) { minus = '-'; } i = Math.abs(i); var n = new String(i); var a = []; while(n.length > 3) { var nn = n.substr(n.length-3); a.unshift(nn); n = n.substr(0,n.length-3); } if(n.length > 0) { a.unshift(n); } n = a.join(delimiter); if(d.length < 1) { amount = n; } else { amount = n + '.' + d; } amount = minus + amount; return amount; } // end of function CommaFormatted()