// 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_20415_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_20415_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_20415_177_288 = new Selection(288,"Barcoding","
Yes
 - Please advise Barcode Symbology required - Our default is Code 128
and remember a 3 digit barcode ie 001 will only give you
999 cards in your range so it might be better to start
at 0001 or even 00001.


","Default is Code 128","","",false,0.0,0,0,0); var pOptSel_20415_195_288 = new Selection(288,"Barcoding","
Yes
 - Please advise Barcode Symbology required - Our default is Code 128
and remember a 3 digit barcode ie 001 will only give you
999 cards in your range so it might be better to start
at 0001 or even 00001.


","Default is Code 128","","",true,0.0,0,0,0); var pOptSel_20415_178_289 = new Selection(289,"Numbering","
Yes - Please advise Starting Number required - and
remember a 3 digit number ie 001 will only give you
999 in your range so it might be better to start
at 0001 or even 00001.
","Serial No\'s Added","","",false,0.0,0,0,0); var pOptSel_20415_183_292 = new Selection(292,"VDP (Variable Data Printing)","
VDP - This can include Names, Addresses, Positions,
Levels etc please provide an Excel database file for VDP.
","Please supply database","","",false,0.0,0,0,0); var pOptSel_20415_194_310 = new Selection(310,"Starting Number","
Yes - Please advise Start Number required ","Starting Number -","","",true,0.0,0,0,0); var pOptSel_20415_177_312 = new Selection(312,"Not Required","","Not Required","","",true,0.0,0,0,0); var pOptSel_20415_178_312 = new Selection(312,"Not Required","","Not Required","","",true,0.0,0,0,0); var pOptSel_20415_183_312 = new Selection(312,"Not Required","","Not Required","","",true,0.0,0,0,0); var pOptSel_20415_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_20415_197_331 = new Selection(331,"Label Size 40 x 15mm","
Label Size 40 x 15mm 
Supplied on Rolls for easy application
Standard Labels are overprinted in Black ink.
Please contact us for Colour Labels and many
other sizes available that are not listed here.
","Labels 40 x 15mm","","",true,0.0,0,0,0); var pOptSel_20415_197_332 = new Selection(332,"Labels 50 x 20mm","
Label Size 50 x 20mm 
Supplied on Rolls for easy application
Standard Labels are overprinted in Black ink. 
Please contact us for Colour Labels and many
other sizes available that are not listed here.
","Labels 50 x 20mm","","",false,0.0,0,0,0); var pOptSel_20415_197_333 = new Selection(333,"Labels 60 x 25mm","
Label Size 60 x 25mm 
Supplied on Rolls for easy application
Standard Labels are overprinted in Black ink. 
Please contact us for Colour Labels and many
other sizes available that are not listed here.
","Labels 60 x 25mm","","",false,0.0,0,0,0); var pOptSel_20415_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_20415_204_389 = new Selection(389,"FREE DELIVERY Same Day Urgent","","Urgent VIP same day at additional cost","","",false,0.0,0,0,0); var pOptSel_20415_177_398 = new Selection(398,"Barcoding Option 2","
Yes
 - Code 39 Barcode Symbology required 
and remember a 3 digit barcode ie 001 will only give you
999 cards in your range so it might be better to start
at 0001 or even 00001.


","Code 39 Barcode","","",false,0.0,0,0,0); var pOptSel_20415_177_399 = new Selection(399,"Barcoding Option 3","
Yes
 - Please advise your Barcode Symbology required in
the comments field below
and remember a 3 digit barcode ie 001 will only give you
999 cards in your range so it might be better to start
at 0001 or even 00001.


","Other Barcode Type","","",false,0.0,0,0,0); var pOptSel_20415_177_444 = new Selection(444,"Barcoding Option 5","
Yes
 - QR Barcodes in sequential numbering or from your database

Remember a 3 digit barcode ie 001 will only give you
999 cards in your range so it might be better to start
at 0001 or even 00001.


","QR Barcodes","","",false,0.0,0,0,0); var pOpt_20415_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_20415_105_51, pOptSel_20415_105_52],true); var pOpt_20415_177 = new Option(177,"Plastic Card Barcoding","","Plastic Card Barcoding","Barcodes Sequential ","

Barcoding required:


","DropDown","4","Finishing Option","-1","","1","Table","horizontal","SingleLine","","","","1","0",0,[pOptSel_20415_177_312, pOptSel_20415_177_288, pOptSel_20415_177_398, pOptSel_20415_177_399, pOptSel_20415_177_444],true); var pOpt_20415_178 = new Option(178,"Sequential Numbering","","","Serial Numbers ","

Numbering required:

","DropDown","-1","","-1","","1","Table","vertical","SingleLine","","","","1","0",0,[pOptSel_20415_178_312, pOptSel_20415_178_289],true); var pOpt_20415_183 = new Option(183,"Plastic Card VDP","","","Variable Data Printing ","

Variable Data Printing required:

","DropDown","-1","","-1","","1","Table","vertical","SingleLine","","","","1","0",0,[pOptSel_20415_183_312, pOptSel_20415_183_292],true); var pOpt_20415_194 = new Option(194,"Starting Number","","Starting Number","Starting Number ","","TextBox","-1","","-1","","1","Table","vertical","SingleLine","","","","0","0",0,[pOptSel_20415_194_310],true); var pOpt_20415_195 = new Option(195,"Starting Number Barcoding","","Starting Number Barcoding","Barcode Start No. ","","TextBox","-1","","-1","","1","Table","vertical","SingleLine","","","","0","0",0,[pOptSel_20415_195_288],true); var pOpt_20415_197 = new Option(197,"Label Size","","Select your label size","Select Your Label Size ","","DropDown","-1","","-1","","1","Table","vertical","SingleLine","","","","1","0",0,[pOptSel_20415_197_331, pOptSel_20415_197_332, pOptSel_20415_197_333],true); var pOpt_20415_204 = new Option(204,"FREE DELIVERY Aust Wide","","","FREE DELIVERY Aust Wide ","","DropDown","-1","","-1","","1","Table","vertical","SingleLine","","","","1","0",0,[pOptSel_20415_204_388, pOptSel_20415_204_330, pOptSel_20415_204_389],true); var pq_144169_105_51 = new SelectionsPrice(105, 51, 0.000) var pq_144169_177_312 = new SelectionsPrice(177, 312, 0.000) var pq_144169_178_312 = new SelectionsPrice(178, 312, 0.000) var pq_144169_183_312 = new SelectionsPrice(183, 312, 0.000) var pq_144169_194_310 = new SelectionsPrice(194, 310, 0.000) var pq_144169_195_288 = new SelectionsPrice(195, 288, 0.000) var pq_144169_197_331 = new SelectionsPrice(197, 331, 0.000) var pq_144169_105_52 = new SelectionsPrice(105, 52, 50.000) var pq_144169_177_288 = new SelectionsPrice(177, 288, 20.000) var pq_144169_178_289 = new SelectionsPrice(178, 289, 20.000) var pq_144169_183_292 = new SelectionsPrice(183, 292, 40.000) var pq_144169_197_332 = new SelectionsPrice(197, 332, 32.000) var pq_144169_204_388 = new SelectionsPrice(204, 388, 0.000) var pq_144169_177_398 = new SelectionsPrice(177, 398, 0.000) var pq_144169_197_333 = new SelectionsPrice(197, 333, 62.000) var pq_144169_204_330 = new SelectionsPrice(204, 330, 0.000) var pq_144169_177_399 = new SelectionsPrice(177, 399, 0.000) var pq_144169_204_389 = new SelectionsPrice(204, 389, 0.000) var pq_144169_177_444 = new SelectionsPrice(177, 444, 0.000) var pq_144169 = new ProductQuantities(144169, 20415, 250, 98.0000, [pq_144169_105_51, pq_144169_177_312, pq_144169_178_312, pq_144169_183_312, pq_144169_194_310, pq_144169_195_288, pq_144169_197_331, pq_144169_105_52, pq_144169_177_288, pq_144169_178_289, pq_144169_183_292, pq_144169_197_332, pq_144169_204_388, pq_144169_177_398, pq_144169_197_333, pq_144169_204_330, pq_144169_177_399, pq_144169_204_389, pq_144169_177_444]); var pq_144166_105_51 = new SelectionsPrice(105, 51, 0.000) var pq_144166_177_312 = new SelectionsPrice(177, 312, 0.000) var pq_144166_178_312 = new SelectionsPrice(178, 312, 0.000) var pq_144166_183_312 = new SelectionsPrice(183, 312, 0.000) var pq_144166_194_310 = new SelectionsPrice(194, 310, 0.000) var pq_144166_195_288 = new SelectionsPrice(195, 288, 0.000) var pq_144166_197_331 = new SelectionsPrice(197, 331, 0.000) var pq_144166_105_52 = new SelectionsPrice(105, 52, 75.000) var pq_144166_177_288 = new SelectionsPrice(177, 288, 25.000) var pq_144166_178_289 = new SelectionsPrice(178, 289, 25.000) var pq_144166_183_292 = new SelectionsPrice(183, 292, 55.000) var pq_144166_197_332 = new SelectionsPrice(197, 332, 45.000) var pq_144166_204_388 = new SelectionsPrice(204, 388, 0.000) var pq_144166_177_398 = new SelectionsPrice(177, 398, 0.000) var pq_144166_197_333 = new SelectionsPrice(197, 333, 85.000) var pq_144166_204_330 = new SelectionsPrice(204, 330, 0.000) var pq_144166_177_399 = new SelectionsPrice(177, 399, 0.000) var pq_144166_204_389 = new SelectionsPrice(204, 389, 0.000) var pq_144166_177_444 = new SelectionsPrice(177, 444, 0.000) var pq_144166 = new ProductQuantities(144166, 20415, 500, 160.0000, [pq_144166_105_51, pq_144166_177_312, pq_144166_178_312, pq_144166_183_312, pq_144166_194_310, pq_144166_195_288, pq_144166_197_331, pq_144166_105_52, pq_144166_177_288, pq_144166_178_289, pq_144166_183_292, pq_144166_197_332, pq_144166_204_388, pq_144166_177_398, pq_144166_197_333, pq_144166_204_330, pq_144166_177_399, pq_144166_204_389, pq_144166_177_444]); var pq_144167_105_51 = new SelectionsPrice(105, 51, 0.000) var pq_144167_177_312 = new SelectionsPrice(177, 312, 0.000) var pq_144167_178_312 = new SelectionsPrice(178, 312, 0.000) var pq_144167_183_312 = new SelectionsPrice(183, 312, 0.000) var pq_144167_194_310 = new SelectionsPrice(194, 310, 0.000) var pq_144167_195_288 = new SelectionsPrice(195, 288, 0.000) var pq_144167_197_331 = new SelectionsPrice(197, 331, 0.000) var pq_144167_105_52 = new SelectionsPrice(105, 52, 100.000) var pq_144167_177_288 = new SelectionsPrice(177, 288, 40.000) var pq_144167_178_289 = new SelectionsPrice(178, 289, 40.000) var pq_144167_183_292 = new SelectionsPrice(183, 292, 70.000) var pq_144167_197_332 = new SelectionsPrice(197, 332, 50.000) var pq_144167_204_388 = new SelectionsPrice(204, 388, 0.000) var pq_144167_177_398 = new SelectionsPrice(177, 398, 0.000) var pq_144167_197_333 = new SelectionsPrice(197, 333, 130.000) var pq_144167_204_330 = new SelectionsPrice(204, 330, 0.000) var pq_144167_177_399 = new SelectionsPrice(177, 399, 0.000) var pq_144167_204_389 = new SelectionsPrice(204, 389, 0.000) var pq_144167_177_444 = new SelectionsPrice(177, 444, 0.000) var pq_144167 = new ProductQuantities(144167, 20415, 1000, 230.0000, [pq_144167_105_51, pq_144167_177_312, pq_144167_178_312, pq_144167_183_312, pq_144167_194_310, pq_144167_195_288, pq_144167_197_331, pq_144167_105_52, pq_144167_177_288, pq_144167_178_289, pq_144167_183_292, pq_144167_197_332, pq_144167_204_388, pq_144167_177_398, pq_144167_197_333, pq_144167_204_330, pq_144167_177_399, pq_144167_204_389, pq_144167_177_444]); var pq_144170_105_51 = new SelectionsPrice(105, 51, 0.000) var pq_144170_177_312 = new SelectionsPrice(177, 312, 0.000) var pq_144170_178_312 = new SelectionsPrice(178, 312, 0.000) var pq_144170_183_312 = new SelectionsPrice(183, 312, 0.000) var pq_144170_194_310 = new SelectionsPrice(194, 310, 0.000) var pq_144170_195_288 = new SelectionsPrice(195, 288, 0.000) var pq_144170_197_331 = new SelectionsPrice(197, 331, 0.000) var pq_144170_105_52 = new SelectionsPrice(105, 52, 135.000) var pq_144170_177_288 = new SelectionsPrice(177, 288, 65.000) var pq_144170_178_289 = new SelectionsPrice(178, 289, 65.000) var pq_144170_183_292 = new SelectionsPrice(183, 292, 95.000) var pq_144170_197_332 = new SelectionsPrice(197, 332, 95.000) var pq_144170_204_388 = new SelectionsPrice(204, 388, 0.000) var pq_144170_177_398 = new SelectionsPrice(177, 398, 0.000) var pq_144170_197_333 = new SelectionsPrice(197, 333, 285.000) var pq_144170_204_330 = new SelectionsPrice(204, 330, 0.000) var pq_144170_177_399 = new SelectionsPrice(177, 399, 0.000) var pq_144170_204_389 = new SelectionsPrice(204, 389, 0.000) var pq_144170_177_444 = new SelectionsPrice(177, 444, 0.000) var pq_144170 = new ProductQuantities(144170, 20415, 2500, 530.0000, [pq_144170_105_51, pq_144170_177_312, pq_144170_178_312, pq_144170_183_312, pq_144170_194_310, pq_144170_195_288, pq_144170_197_331, pq_144170_105_52, pq_144170_177_288, pq_144170_178_289, pq_144170_183_292, pq_144170_197_332, pq_144170_204_388, pq_144170_177_398, pq_144170_197_333, pq_144170_204_330, pq_144170_177_399, pq_144170_204_389, pq_144170_177_444]); var pq_144168_105_51 = new SelectionsPrice(105, 51, 0.000) var pq_144168_177_312 = new SelectionsPrice(177, 312, 0.000) var pq_144168_178_312 = new SelectionsPrice(178, 312, 0.000) var pq_144168_183_312 = new SelectionsPrice(183, 312, 0.000) var pq_144168_194_310 = new SelectionsPrice(194, 310, 0.000) var pq_144168_195_288 = new SelectionsPrice(195, 288, 0.000) var pq_144168_197_331 = new SelectionsPrice(197, 331, 0.000) var pq_144168_105_52 = new SelectionsPrice(105, 52, 250.000) var pq_144168_177_288 = new SelectionsPrice(177, 288, 90.000) var pq_144168_178_289 = new SelectionsPrice(178, 289, 90.000) var pq_144168_183_292 = new SelectionsPrice(183, 292, 120.000) var pq_144168_197_332 = new SelectionsPrice(197, 332, 220.000) var pq_144168_204_388 = new SelectionsPrice(204, 388, 0.000) var pq_144168_177_398 = new SelectionsPrice(177, 398, 0.000) var pq_144168_197_333 = new SelectionsPrice(197, 333, 510.000) var pq_144168_204_330 = new SelectionsPrice(204, 330, 0.000) var pq_144168_177_399 = new SelectionsPrice(177, 399, 0.000) var pq_144168_204_389 = new SelectionsPrice(204, 389, 0.000) var pq_144168_177_444 = new SelectionsPrice(177, 444, 0.000) var pq_144168 = new ProductQuantities(144168, 20415, 5000, 920.0000, [pq_144168_105_51, pq_144168_177_312, pq_144168_178_312, pq_144168_183_312, pq_144168_194_310, pq_144168_195_288, pq_144168_197_331, pq_144168_105_52, pq_144168_177_288, pq_144168_178_289, pq_144168_183_292, pq_144168_197_332, pq_144168_204_388, pq_144168_177_398, pq_144168_197_333, pq_144168_204_330, pq_144168_177_399, pq_144168_204_389, pq_144168_177_444]); var pq_144171_105_51 = new SelectionsPrice(105, 51, 0.000) var pq_144171_177_312 = new SelectionsPrice(177, 312, 0.000) var pq_144171_178_312 = new SelectionsPrice(178, 312, 0.000) var pq_144171_183_312 = new SelectionsPrice(183, 312, 0.000) var pq_144171_194_310 = new SelectionsPrice(194, 310, 0.000) var pq_144171_195_288 = new SelectionsPrice(195, 288, 0.000) var pq_144171_197_331 = new SelectionsPrice(197, 331, 0.000) var pq_144171_105_52 = new SelectionsPrice(105, 52, 600.000) var pq_144171_177_288 = new SelectionsPrice(177, 288, 130.000) var pq_144171_178_289 = new SelectionsPrice(178, 289, 130.000) var pq_144171_183_292 = new SelectionsPrice(183, 292, 180.000) var pq_144171_197_332 = new SelectionsPrice(197, 332, 450.000) var pq_144171_204_388 = new SelectionsPrice(204, 388, 0.000) var pq_144171_177_398 = new SelectionsPrice(177, 398, 0.000) var pq_144171_197_333 = new SelectionsPrice(197, 333, 860.000) var pq_144171_204_330 = new SelectionsPrice(204, 330, 0.000) var pq_144171_177_399 = new SelectionsPrice(177, 399, 0.000) var pq_144171_204_389 = new SelectionsPrice(204, 389, 0.000) var pq_144171_177_444 = new SelectionsPrice(177, 444, 0.000) var pq_144171 = new ProductQuantities(144171, 20415, 10000, 1520.0000, [pq_144171_105_51, pq_144171_177_312, pq_144171_178_312, pq_144171_183_312, pq_144171_194_310, pq_144171_195_288, pq_144171_197_331, pq_144171_105_52, pq_144171_177_288, pq_144171_178_289, pq_144171_183_292, pq_144171_197_332, pq_144171_204_388, pq_144171_177_398, pq_144171_197_333, pq_144171_204_330, pq_144171_177_399, pq_144171_204_389, pq_144171_177_444]); var pod_533 = new ProductOptionDependencies(195, 177, 288, "c"); var pod_532 = new ProductOptionDependencies(194, 178, 289, "-1"); var p_20415 = new Product(20415, "M13 Super Strength Labels are arguably the strongest Tamper Evident label on the Australian market, widely used by Govt Depts. such as Defence, Embassy\'s and Customs.", [pq_144169, pq_144166, pq_144167, pq_144170, pq_144168, pq_144171], [pOpt_20415_197, pOpt_20415_177, pOpt_20415_195, pOpt_20415_178, pOpt_20415_194, pOpt_20415_183, pOpt_20415_105, pOpt_20415_204], [pod_533, pod_532], [],[],[false]); var prodGroup = new ProductGroup("M13 Super Strength", [], [], [], []); //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(122, 20415, p_20415, 144169, pq_144169); 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()