// 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_20346_105_51 = new Selection(51,"Turnaround 4 - 6 Business Days","
Normal 4 - 6 Day
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.
","Normal 4-6 Business Days from Artwork Sign off","","10",true,0.0,0,0,0); var pOptSel_20346_105_52 = new Selection(52,"Turnaround 2 Business days","
Rush Order 2 Days.
Quick drop everything!

              I need them super fast!
","Rush Order 2 Business Days","","1",false,0.0,0,0,0); var pOptSel_20346_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_20346_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_20346_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_20346_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 pOpt_20346_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_20346_98_110, pOptSel_20346_98_91, pOptSel_20346_98_97, pOptSel_20346_98_263],true); var pOpt_20346_105 = new Option(105,"Turn Around Time","","Turn Around Time","Turn Around Time ","

How quick do you need it:

","DropDown","2","Turn Around","-1","","1","Table","vertical","SingleLine","","","","1","0",0,[pOptSel_20346_105_51, pOptSel_20346_105_52],true); var pq_143410_98_110 = new SelectionsPrice(98, 110, 0.000) var pq_143410_105_51 = new SelectionsPrice(105, 51, 0.000) var pq_143410_98_91 = new SelectionsPrice(98, 91, 0.000) var pq_143410_105_52 = new SelectionsPrice(105, 52, 28.000) var pq_143410_98_97 = new SelectionsPrice(98, 97, 42.500) var pq_143410_98_263 = new SelectionsPrice(98, 263, 20.000) var pq_143410 = new ProductQuantities(143410, 20346, 1, 36.0000, [pq_143410_98_110, pq_143410_105_51, pq_143410_98_91, pq_143410_105_52, pq_143410_98_97, pq_143410_98_263]); var pq_143411_98_110 = new SelectionsPrice(98, 110, 0.000) var pq_143411_105_51 = new SelectionsPrice(105, 51, 0.000) var pq_143411_98_91 = new SelectionsPrice(98, 91, 0.000) var pq_143411_105_52 = new SelectionsPrice(105, 52, 28.000) var pq_143411_98_97 = new SelectionsPrice(98, 97, 42.500) var pq_143411_98_263 = new SelectionsPrice(98, 263, 20.000) var pq_143411 = new ProductQuantities(143411, 20346, 2, 42.0000, [pq_143411_98_110, pq_143411_105_51, pq_143411_98_91, pq_143411_105_52, pq_143411_98_97, pq_143411_98_263]); var pq_143412_98_110 = new SelectionsPrice(98, 110, 0.000) var pq_143412_105_51 = new SelectionsPrice(105, 51, 0.000) var pq_143412_98_91 = new SelectionsPrice(98, 91, 0.000) var pq_143412_105_52 = new SelectionsPrice(105, 52, 28.000) var pq_143412_98_97 = new SelectionsPrice(98, 97, 42.500) var pq_143412_98_263 = new SelectionsPrice(98, 263, 20.000) var pq_143412 = new ProductQuantities(143412, 20346, 3, 51.0000, [pq_143412_98_110, pq_143412_105_51, pq_143412_98_91, pq_143412_105_52, pq_143412_98_97, pq_143412_98_263]); var pq_143413_98_110 = new SelectionsPrice(98, 110, 0.000) var pq_143413_105_51 = new SelectionsPrice(105, 51, 0.000) var pq_143413_98_91 = new SelectionsPrice(98, 91, 0.000) var pq_143413_105_52 = new SelectionsPrice(105, 52, 28.000) var pq_143413_98_97 = new SelectionsPrice(98, 97, 42.500) var pq_143413_98_263 = new SelectionsPrice(98, 263, 20.000) var pq_143413 = new ProductQuantities(143413, 20346, 4, 67.0000, [pq_143413_98_110, pq_143413_105_51, pq_143413_98_91, pq_143413_105_52, pq_143413_98_97, pq_143413_98_263]); var pq_143414_98_110 = new SelectionsPrice(98, 110, 0.000) var pq_143414_105_51 = new SelectionsPrice(105, 51, 0.000) var pq_143414_98_91 = new SelectionsPrice(98, 91, 0.000) var pq_143414_105_52 = new SelectionsPrice(105, 52, 28.000) var pq_143414_98_97 = new SelectionsPrice(98, 97, 42.500) var pq_143414_98_263 = new SelectionsPrice(98, 263, 20.000) var pq_143414 = new ProductQuantities(143414, 20346, 5, 83.0000, [pq_143414_98_110, pq_143414_105_51, pq_143414_98_91, pq_143414_105_52, pq_143414_98_97, pq_143414_98_263]); var pq_143415_98_110 = new SelectionsPrice(98, 110, 0.000) var pq_143415_105_51 = new SelectionsPrice(105, 51, 0.000) var pq_143415_98_91 = new SelectionsPrice(98, 91, 0.000) var pq_143415_105_52 = new SelectionsPrice(105, 52, 28.000) var pq_143415_98_97 = new SelectionsPrice(98, 97, 42.500) var pq_143415_98_263 = new SelectionsPrice(98, 263, 20.000) var pq_143415 = new ProductQuantities(143415, 20346, 6, 98.0000, [pq_143415_98_110, pq_143415_105_51, pq_143415_98_91, pq_143415_105_52, pq_143415_98_97, pq_143415_98_263]); var pq_143416_98_110 = new SelectionsPrice(98, 110, 0.000) var pq_143416_105_51 = new SelectionsPrice(105, 51, 0.000) var pq_143416_98_91 = new SelectionsPrice(98, 91, 0.000) var pq_143416_105_52 = new SelectionsPrice(105, 52, 28.000) var pq_143416_98_97 = new SelectionsPrice(98, 97, 42.500) var pq_143416_98_263 = new SelectionsPrice(98, 263, 20.000) var pq_143416 = new ProductQuantities(143416, 20346, 7, 112.0000, [pq_143416_98_110, pq_143416_105_51, pq_143416_98_91, pq_143416_105_52, pq_143416_98_97, pq_143416_98_263]); var pq_143417_98_110 = new SelectionsPrice(98, 110, 0.000) var pq_143417_105_51 = new SelectionsPrice(105, 51, 0.000) var pq_143417_98_91 = new SelectionsPrice(98, 91, 0.000) var pq_143417_105_52 = new SelectionsPrice(105, 52, 28.000) var pq_143417_98_97 = new SelectionsPrice(98, 97, 42.500) var pq_143417_98_263 = new SelectionsPrice(98, 263, 20.000) var pq_143417 = new ProductQuantities(143417, 20346, 8, 123.0000, [pq_143417_98_110, pq_143417_105_51, pq_143417_98_91, pq_143417_105_52, pq_143417_98_97, pq_143417_98_263]); var pq_143418_98_110 = new SelectionsPrice(98, 110, 0.000) var pq_143418_105_51 = new SelectionsPrice(105, 51, 0.000) var pq_143418_98_91 = new SelectionsPrice(98, 91, 0.000) var pq_143418_105_52 = new SelectionsPrice(105, 52, 28.000) var pq_143418_98_97 = new SelectionsPrice(98, 97, 42.500) var pq_143418_98_263 = new SelectionsPrice(98, 263, 20.000) var pq_143418 = new ProductQuantities(143418, 20346, 9, 135.0000, [pq_143418_98_110, pq_143418_105_51, pq_143418_98_91, pq_143418_105_52, pq_143418_98_97, pq_143418_98_263]); var pq_143419_98_110 = new SelectionsPrice(98, 110, 0.000) var pq_143419_105_51 = new SelectionsPrice(105, 51, 0.000) var pq_143419_98_91 = new SelectionsPrice(98, 91, 0.000) var pq_143419_105_52 = new SelectionsPrice(105, 52, 28.000) var pq_143419_98_97 = new SelectionsPrice(98, 97, 42.500) var pq_143419_98_263 = new SelectionsPrice(98, 263, 20.000) var pq_143419 = new ProductQuantities(143419, 20346, 10, 147.0000, [pq_143419_98_110, pq_143419_105_51, pq_143419_98_91, pq_143419_105_52, pq_143419_98_97, pq_143419_98_263]); var pq_143420_98_110 = new SelectionsPrice(98, 110, 0.000) var pq_143420_105_51 = new SelectionsPrice(105, 51, 0.000) var pq_143420_98_91 = new SelectionsPrice(98, 91, 0.000) var pq_143420_105_52 = new SelectionsPrice(105, 52, 28.000) var pq_143420_98_97 = new SelectionsPrice(98, 97, 42.500) var pq_143420_98_263 = new SelectionsPrice(98, 263, 20.000) var pq_143420 = new ProductQuantities(143420, 20346, 11, 157.0000, [pq_143420_98_110, pq_143420_105_51, pq_143420_98_91, pq_143420_105_52, pq_143420_98_97, pq_143420_98_263]); var pq_143421_98_110 = new SelectionsPrice(98, 110, 0.000) var pq_143421_105_51 = new SelectionsPrice(105, 51, 0.000) var pq_143421_98_91 = new SelectionsPrice(98, 91, 0.000) var pq_143421_105_52 = new SelectionsPrice(105, 52, 28.000) var pq_143421_98_97 = new SelectionsPrice(98, 97, 42.500) var pq_143421_98_263 = new SelectionsPrice(98, 263, 20.000) var pq_143421 = new ProductQuantities(143421, 20346, 12, 164.0000, [pq_143421_98_110, pq_143421_105_51, pq_143421_98_91, pq_143421_105_52, pq_143421_98_97, pq_143421_98_263]); var pq_143422_98_110 = new SelectionsPrice(98, 110, 0.000) var pq_143422_105_51 = new SelectionsPrice(105, 51, 0.000) var pq_143422_98_91 = new SelectionsPrice(98, 91, 0.000) var pq_143422_105_52 = new SelectionsPrice(105, 52, 28.000) var pq_143422_98_97 = new SelectionsPrice(98, 97, 42.500) var pq_143422_98_263 = new SelectionsPrice(98, 263, 20.000) var pq_143422 = new ProductQuantities(143422, 20346, 13, 174.0000, [pq_143422_98_110, pq_143422_105_51, pq_143422_98_91, pq_143422_105_52, pq_143422_98_97, pq_143422_98_263]); var pq_143423_98_110 = new SelectionsPrice(98, 110, 0.000) var pq_143423_105_51 = new SelectionsPrice(105, 51, 0.000) var pq_143423_98_91 = new SelectionsPrice(98, 91, 0.000) var pq_143423_105_52 = new SelectionsPrice(105, 52, 28.000) var pq_143423_98_97 = new SelectionsPrice(98, 97, 42.500) var pq_143423_98_263 = new SelectionsPrice(98, 263, 20.000) var pq_143423 = new ProductQuantities(143423, 20346, 14, 186.0000, [pq_143423_98_110, pq_143423_105_51, pq_143423_98_91, pq_143423_105_52, pq_143423_98_97, pq_143423_98_263]); var pq_143424_98_110 = new SelectionsPrice(98, 110, 0.000) var pq_143424_105_51 = new SelectionsPrice(105, 51, 0.000) var pq_143424_98_91 = new SelectionsPrice(98, 91, 0.000) var pq_143424_105_52 = new SelectionsPrice(105, 52, 28.000) var pq_143424_98_97 = new SelectionsPrice(98, 97, 42.500) var pq_143424_98_263 = new SelectionsPrice(98, 263, 20.000) var pq_143424 = new ProductQuantities(143424, 20346, 15, 196.0000, [pq_143424_98_110, pq_143424_105_51, pq_143424_98_91, pq_143424_105_52, pq_143424_98_97, pq_143424_98_263]); var pq_143425_98_110 = new SelectionsPrice(98, 110, 0.000) var pq_143425_105_51 = new SelectionsPrice(105, 51, 0.000) var pq_143425_98_91 = new SelectionsPrice(98, 91, 0.000) var pq_143425_105_52 = new SelectionsPrice(105, 52, 28.000) var pq_143425_98_97 = new SelectionsPrice(98, 97, 42.500) var pq_143425_98_263 = new SelectionsPrice(98, 263, 20.000) var pq_143425 = new ProductQuantities(143425, 20346, 16, 203.0000, [pq_143425_98_110, pq_143425_105_51, pq_143425_98_91, pq_143425_105_52, pq_143425_98_97, pq_143425_98_263]); var pq_143426_98_110 = new SelectionsPrice(98, 110, 0.000) var pq_143426_105_51 = new SelectionsPrice(105, 51, 0.000) var pq_143426_98_91 = new SelectionsPrice(98, 91, 0.000) var pq_143426_105_52 = new SelectionsPrice(105, 52, 28.000) var pq_143426_98_97 = new SelectionsPrice(98, 97, 42.500) var pq_143426_98_263 = new SelectionsPrice(98, 263, 20.000) var pq_143426 = new ProductQuantities(143426, 20346, 17, 214.0000, [pq_143426_98_110, pq_143426_105_51, pq_143426_98_91, pq_143426_105_52, pq_143426_98_97, pq_143426_98_263]); var pq_143427_98_110 = new SelectionsPrice(98, 110, 0.000) var pq_143427_105_51 = new SelectionsPrice(105, 51, 0.000) var pq_143427_98_91 = new SelectionsPrice(98, 91, 0.000) var pq_143427_105_52 = new SelectionsPrice(105, 52, 28.000) var pq_143427_98_97 = new SelectionsPrice(98, 97, 42.500) var pq_143427_98_263 = new SelectionsPrice(98, 263, 20.000) var pq_143427 = new ProductQuantities(143427, 20346, 18, 221.0000, [pq_143427_98_110, pq_143427_105_51, pq_143427_98_91, pq_143427_105_52, pq_143427_98_97, pq_143427_98_263]); var pq_143428_98_110 = new SelectionsPrice(98, 110, 0.000) var pq_143428_105_51 = new SelectionsPrice(105, 51, 0.000) var pq_143428_98_91 = new SelectionsPrice(98, 91, 0.000) var pq_143428_105_52 = new SelectionsPrice(105, 52, 28.000) var pq_143428_98_97 = new SelectionsPrice(98, 97, 42.500) var pq_143428_98_263 = new SelectionsPrice(98, 263, 20.000) var pq_143428 = new ProductQuantities(143428, 20346, 19, 225.0000, [pq_143428_98_110, pq_143428_105_51, pq_143428_98_91, pq_143428_105_52, pq_143428_98_97, pq_143428_98_263]); var pq_143429_98_110 = new SelectionsPrice(98, 110, 0.000) var pq_143429_105_51 = new SelectionsPrice(105, 51, 0.000) var pq_143429_98_91 = new SelectionsPrice(98, 91, 0.000) var pq_143429_105_52 = new SelectionsPrice(105, 52, 28.000) var pq_143429_98_97 = new SelectionsPrice(98, 97, 42.500) var pq_143429_98_263 = new SelectionsPrice(98, 263, 20.000) var pq_143429 = new ProductQuantities(143429, 20346, 20, 231.0000, [pq_143429_98_110, pq_143429_105_51, pq_143429_98_91, pq_143429_105_52, pq_143429_98_97, pq_143429_98_263]); var pq_143430_98_110 = new SelectionsPrice(98, 110, 0.000) var pq_143430_105_51 = new SelectionsPrice(105, 51, 0.000) var pq_143430_98_91 = new SelectionsPrice(98, 91, 0.000) var pq_143430_105_52 = new SelectionsPrice(105, 52, 28.000) var pq_143430_98_97 = new SelectionsPrice(98, 97, 42.500) var pq_143430_98_263 = new SelectionsPrice(98, 263, 20.000) var pq_143430 = new ProductQuantities(143430, 20346, 21, 238.0000, [pq_143430_98_110, pq_143430_105_51, pq_143430_98_91, pq_143430_105_52, pq_143430_98_97, pq_143430_98_263]); var pq_143431_98_110 = new SelectionsPrice(98, 110, 0.000) var pq_143431_105_51 = new SelectionsPrice(105, 51, 0.000) var pq_143431_98_91 = new SelectionsPrice(98, 91, 0.000) var pq_143431_105_52 = new SelectionsPrice(105, 52, 28.000) var pq_143431_98_97 = new SelectionsPrice(98, 97, 42.500) var pq_143431_98_263 = new SelectionsPrice(98, 263, 20.000) var pq_143431 = new ProductQuantities(143431, 20346, 22, 244.0000, [pq_143431_98_110, pq_143431_105_51, pq_143431_98_91, pq_143431_105_52, pq_143431_98_97, pq_143431_98_263]); var pq_143432_98_110 = new SelectionsPrice(98, 110, 0.000) var pq_143432_105_51 = new SelectionsPrice(105, 51, 0.000) var pq_143432_98_91 = new SelectionsPrice(98, 91, 0.000) var pq_143432_105_52 = new SelectionsPrice(105, 52, 28.000) var pq_143432_98_97 = new SelectionsPrice(98, 97, 42.500) var pq_143432_98_263 = new SelectionsPrice(98, 263, 20.000) var pq_143432 = new ProductQuantities(143432, 20346, 23, 252.0000, [pq_143432_98_110, pq_143432_105_51, pq_143432_98_91, pq_143432_105_52, pq_143432_98_97, pq_143432_98_263]); var pq_143433_98_110 = new SelectionsPrice(98, 110, 0.000) var pq_143433_105_51 = new SelectionsPrice(105, 51, 0.000) var pq_143433_98_91 = new SelectionsPrice(98, 91, 0.000) var pq_143433_105_52 = new SelectionsPrice(105, 52, 28.000) var pq_143433_98_97 = new SelectionsPrice(98, 97, 42.500) var pq_143433_98_263 = new SelectionsPrice(98, 263, 20.000) var pq_143433 = new ProductQuantities(143433, 20346, 24, 258.0000, [pq_143433_98_110, pq_143433_105_51, pq_143433_98_91, pq_143433_105_52, pq_143433_98_97, pq_143433_98_263]); var pq_143434_98_110 = new SelectionsPrice(98, 110, 0.000) var pq_143434_105_51 = new SelectionsPrice(105, 51, 0.000) var pq_143434_98_91 = new SelectionsPrice(98, 91, 0.000) var pq_143434_105_52 = new SelectionsPrice(105, 52, 28.000) var pq_143434_98_97 = new SelectionsPrice(98, 97, 42.500) var pq_143434_98_263 = new SelectionsPrice(98, 263, 20.000) var pq_143434 = new ProductQuantities(143434, 20346, 25, 267.0000, [pq_143434_98_110, pq_143434_105_51, pq_143434_98_91, pq_143434_105_52, pq_143434_98_97, pq_143434_98_263]); var p_20346 = new Product(20346, "A2 Size Posters 135gsm Tear & Moisture Resistant Synthetic", [pq_143410, pq_143411, pq_143412, pq_143413, pq_143414, pq_143415, pq_143416, pq_143417, pq_143418, pq_143419, pq_143420, pq_143421, pq_143422, pq_143423, pq_143424, pq_143425, pq_143426, pq_143427, pq_143428, pq_143429, pq_143430, pq_143431, pq_143432, pq_143433, pq_143434], [pOpt_20346_98, pOpt_20346_105], [], [],[],[false]); var prodGroup = new ProductGroup("A2 Size Posters (420 x 595mm)", [], [], [], []); //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(68, 20346, p_20346, 143410, pq_143410); 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()