

var productDB = new Array();	 // "productDB" array holds ALL products.

var total_ordered = 0;
 
// Naming of Boomkicker array elements. The "discounted" element is for items to be discounted.
function modelBK(index, discounted, partNumber, description, maxLength, minLength, maxStroke, minStroke, boomFitBack, boomFitDown, mastFitBack, mastFitDown, returnForce, fitCorrectForce, price, quantity)
{
    this.index = index;
    this.discounted = discounted;
    this.partNumber = partNumber;
    this.description = description;
    this.maxLength = maxLength;			// Initial pin-pin length.
    this.minLength = minLength;			// Min. pin-pin length by cutting bars.
    this.maxStroke = maxStroke;			// Max. stroke at initial pin-pin length.
    this.minStroke = minStroke;			// Max. stroke at minimum pin-pin length.
    this.boomFitBack = boomFitBack;		// Length from aft end of boom fitting to center of pin hole.
    this.boomFitDown = boomFitDown;		// Length from bottom of boom to boom fitting pin hole center.
    this.mastFitBack = mastFitBack;		// Length from aft side of mast to center of pin hole.
    this.mastFitDown = mastFitDown;		// Length from bottom of mast fitting to center of pin hole.
    this.returnForce = returnForce;		// Return force of BK at maxLength.
    this.fitCorrectForce = fitCorrectForce;	// Fittings offset that effects moment calulation. On boom, pin hole to toe. On mast, pin hole to swivel hole.
    this.price = price;
    this.quantity = quantity;
}

// Naming of EasyStow Fenders array elements. The "discounted" element is for items to be discounted.
function modelESF(index, discounted, partNumber, description, sizeORcolor, price, quantity)
{
    this.index = index;
    this.discounted = discounted;
    this.partNumber = partNumber;
    this.description = description;
    this.sizeORcolor = sizeORcolor;
    this.price = price;
    this.quantity = quantity;
}

// Naming of EastStow Race Marks array elements.
function modelESRM(index, discounted, partNumber, description, sizeORcolor, price, quantity)
{
    this.index = index;
    this.discounted = discounted;
    this.partNumber = partNumber;
    this.description = description;
    this.sizeORcolor = sizeORcolor;
    this.price = price;
    this.quantity = quantity;
}   

// Naming of Rolling Bail array elements.
function modelRB(index, discounted, partNumber, description, sizeORcolor, price, quantity) 
{
    this.index = index;
    this.discounted = discounted;
    this.partNumber = partNumber;
    this.description = description;
    this.sizeORcolor = sizeORcolor;
    this.price = price;
    this.quantity = quantity;
}

// Naming of FastTales array elements.
function modelFT(index, discounted, partNumber, description, price, quantity)
{
    this.index = index;
    this.discounted = discounted;
    this.partNumber = partNumber;
    this.description = description;
    this.price = price;
    this.quantity = quantity;
}

// This is need at the end to make the the products.js work correctly with the stores.
function modelEND(index)
{
    this.index = index;
}

function createProductDB() 
{
//
//
//
//
// Boomkicker (Note it uses partNumber for the function addPart().)
// PO denotes Performance Options.
// BKO-xxxx denotes optional parts.
// xxxx is the model (0312, 0400, 0750, 1000 and 1500).
//
//
   productDB[0] = new modelBK("BK", "", "K0312", "Boomkicker with fittings for boats 14 ft. to 16 ft. long", 30, 25, 11, 6, 0, 0, 1, 2, 75, .88, 87.00, 0);
   productDB[1] = new modelBK("BK", "", "K0400", "Boomkicker with fittings for boats 16 ft. to 19 ft. long", 34, 29, 11, 6, 0, 0, 1.6, 1.75, 150, .88, 149.00, 0);
   productDB[2] = new modelBK("BK", "", "K0500", "Boomkicker with fittings for boats 19 ft. to 20 ft. long", 36, 26, 11, 6, 3, 1.75, 1.6, 1.75, 180, 2.38, 205.00, 0);
   productDB[3] = new modelBK("BK", "", "K0750", "Boomkicker with fittings for boats 20 ft. to 25 ft. long", 36, 31, 11, 6, 3, 1.75, 1.6, 1.75, 250, 2.38, 208.00, 0);
   productDB[4] = new modelBK("BK", "", "K0800", "Boomkicker with fittings for boats 25 ft. to 27 ft. long", 45, 35, 15, 6, 3.5, 1.875, 1.75, 2.25, 290, 2.97, 258.00, 0);
   productDB[5] = new modelBK("BK", "", "K1000", "Boomkicker with fittings for boats 27 ft. to 30 ft. long", 45, 40, 15, 6, 3.5, 1.875, 1.75, 2.25, 400, 2.97, 262.00, 0);
   productDB[6] = new modelBK("BK", "", "K1250", "Boomkicker with fittings for boats 30 ft. to 34 ft. long", 53, 43, 16, 9, 4, 2.125, 1.875, 2.25, 473, 3.44, 317.00, 0);
   productDB[7] = new modelBK("BK", "", "K1500", "Boomkicker with fittings for boats 34 ft. to 38 ft. long", 53, 48, 16, 9, 4, 2.125, 1.875, 2.25, 600, 3.44, 324.00, 0);
//Model 312 parts
   productDB[8] = new modelBK("BKO-0312", "", "M0350", "Large Dia. Mast Slide, 1/2\"(13mm) Dia.", "", "", "", "", "", "", "", "", "", "", 7.50, 0);
   productDB[9] = new modelBK("BKO-0312", "", "M0360", "Large Dia. Gooseneck Slide, 1/2\"(13mm) Dia.", "", "", "", "", "", "", "", "", "", "", 7.50, 0);
   productDB[10] = new modelBK("BKO-0312", "", "K0360", "Spring Rod, 3/8\"(9.5mm) Dia.", "", "", "", "", "", "", "", "", "", "", 8.50, 0);
//Model 400 parts
   productDB[11] = new modelBK("BKO-0400", "", "M0738", "Flat Mast Slide, 3/4\"(19mm) width", "", "", "", "", "", "", "", "", "", "", 7.50, 0);
   productDB[12] = new modelBK("BKO-0400", "", "M0735", "Large Diameter Mast Slide, 1/2\"(13mm) Dia.", "", "", "", "", "", "", "", "", "", "", 7.50, 0);
   productDB[13] = new modelBK("BKO-0400", "", "K0763", "Spring Rod, 7/16\"(11mm) Dia.", "", "", "", "", "", "", "", "", "", "", 17.00, 0);
   productDB[14] = new modelBK("BKO-0400", "", "K0461", "Spring Rod, 3/8\"(9.5mm) Dia.", "", "", "", "", "", "", "", "", "", "", 12.50, 0);
   productDB[15] = new modelBK("BKO-0400", "", "QP-0.250x2.200", "Quick Pin, 1/4\"Dia.x2.2\"lg. (For swivel to mast bracket, vertical pin)", "", "", "", "", "", "", "", "", "", "", 4.40, 0);
//Model 750 parts
   productDB[16] = new modelBK("BKO-0750", "", "M0731", "Flat Mast Slide, 1/2\"(13mm) width", "", "", "", "", "", "", "", "", "", "", 7.50, 0);
   productDB[17] = new modelBK("BKO-0750", "", "M0732", "Flat Mast Slide, 5/8\"(16mm) width", "", "", "", "", "", "", "", "", "", "", 7.50, 0);
   productDB[18] = new modelBK("BKO-0750", "", "M0738", "Flat Mast Slide, 3/4\"(19mm) width", "", "", "", "", "", "", "", "", "", "", 7.50, 0);
   productDB[19] = new modelBK("BKO-0750", "", "M0741", "Flat Mast Slide, 7/8\"(22mm) width", "", "", "", "", "", "", "", "", "", "", 7.50, 0);
   productDB[20] = new modelBK("BKO-0750", "", "M0734", "Flat Mast Slide, 1\"(25mm) width", "", "", "", "", "", "", "", "", "", "", 7.50, 0);
   productDB[21] = new modelBK("BKO-0750", "", "M0733", "Round Mast Slide, 5/16\"(8mm) Dia.", "", "", "", "", "", "", "", "", "", "", 7.50, 0);
   productDB[22] = new modelBK("BKO-0750", "", "M0735", "Round Mast Slide, 1/2\"(13mm) Dia.", "", "", "", "", "", "", "", "", "", "", 7.50, 0);
   productDB[23] = new modelBK("BKO-0750", "", "B0780", "Boom Track, 9\" length", "", "", "", "", "", "", "", "", "", "", 29.00, 0);
   productDB[24] = new modelBK("PO", "", "B0790-R", "Boom Track Fitting to retrofit existing model K0750", "", "", "", "", "", "", "", "", "", "", 51.00, 0);
   productDB[25] = new modelBK("BKO-0750", "", "K0760", "Spring Rod, 1/2\"(13mm) Dia.", "", "", "", "", "", "", "", "", "", "", 15.40, 0);
   productDB[26] = new modelBK("BKO-0750", "", "K0761", "Spring Rod, 7/16\"(11mm) Dia.", "", "", "", "", "", "", "", "", "", "", 14.30, 0);
   productDB[27] = new modelBK("BKO-0750", "", "K0762", "Spring Rod, 3/8\"(9.5mm) Dia.", "", "", "", "", "", "", "", "", "", "", 13.50, 0);
   productDB[28] = new modelBK("BKO-0750", "", "QP-0.250x2.200", "Quick Pin, 1/4\"Dia.x2.2\"lg. (For swivel to mast bracket, vertical pin)", "", "", "", "", "", "", "", "", "", "", 4.40, 0);
   productDB[29] = new modelBK("BKO-0750", "", "M0751", "Roll Stop Fitting", 44.00, 0);
   productDB[30] = new modelBK("BKO-0750", "", "B1032", "Boom Adaptor for Capri/Catalina", "", "", "", "", "", "", "", "", "", "", 17.00, 0);
//Model 1000 parts
   productDB[31] = new modelBK("BKO-1000", "", "M1031", "Flat Mast Slide, 1/2\"(13mm) width", "", "", "", "", "", "", "", "", "", "", 7.50, 0);
   productDB[32] = new modelBK("BKO-1000", "", "M1032", "Flat Mast Slide, 5/8\"(16mm) width", "", "", "", "", "", "", "", "", "", "", 7.50, 0);
   productDB[33] = new modelBK("BKO-1000", "", "M1038", "Flat Mast Slide, 3/4\"(19mm) width", "", "", "", "", "", "", "", "", "", "", 7.50, 0);
   productDB[34] = new modelBK("BKO-1000", "", "M1033", "Flat Mast Slide, 7/8\"(22mm) width", "", "", "", "", "", "", "", "", "", "", 7.50, 0);
   productDB[35] = new modelBK("BKO-1000", "", "M1034", "Flat Mast Slide, 1\"(25mm) width", "", "", "", "", "", "", "", "", "", "", 7.50, 0);
   productDB[36] = new modelBK("BKO-1000", "", "M1035", "Round Mast Slide, 1/2\"(13mm) Dia.", "", "", "", "", "", "", "", "", "", "", 7.50, 0);
   productDB[37] = new modelBK("BKO-1000", "", "B1038", "Flat Boom Slide, Specify width", "", "", "", "", "", "", "", "", "", "", 7.50, 0);
   productDB[38] = new modelBK("PO", "", "B1090-R", "Boom Track Fitting to retrofit existing model K1000", "", "", "", "", "", "", "", "", "", "", 62.00, 0);
   productDB[39] = new modelBK("BKO-1000", "", "K1060", "Spring Rod, 5/8\"(16mm) Dia.", "", "", "", "", "", "", "", "", "", "", 21.00, 0);
   productDB[40] = new modelBK("BKO-1000", "", "K1061", "Spring Rod, 9/16\"(14mm) Dia.", "", "", "", "", "", "", "", "", "", "", 25.00, 0);
   productDB[41] = new modelBK("BKO-1000", "", "K1062", "Spring Rod, 1/2\"(13mm) Dia.", "", "", "", "", "", "", "", "", "", "", 17.00, 0);
   productDB[42] = new modelBK("BKO-1000", "", "QP-0.312x2.500", "Quick Pin, 5/16\"Dia.x2.5\"lg. (For swivel to mast bracket, vertical pin)", "", "", "", "", "", "", "", "", "", "", 5.18, 0);
   productDB[43] = new modelBK("BKO-1000", "", "M1051", "Roll Stop Fitting", "", "", "", "", "", "", "", "", "", "", 49.00, 0);
//Model 1500 parts
   productDB[44] = new modelBK("BKO-1500", "", "M1532", "Flat Mast Slide, 5/8\"(16mm) width", "", "", "", "", "", "", "", "", "", "", 8.50, 0);
   productDB[45] = new modelBK("BKO-1500", "", "M1538", "Flat Mast Slide, 3/4\"(19mm) width", "", "", "", "", "", "", "", "", "", "", 8.50, 0);
   productDB[46] = new modelBK("BKO-1500", "", "M1533", "Flat Mast Slide, 7/8\"(22mm) width", "", "", "", "", "", "", "", "", "", "", 8.50, 0);
   productDB[47] = new modelBK("BKO-1500", "", "M1534", "Flat Mast Slide, 1\"(25mm) width", "", "", "", "", "", "", "", "", "", "", 8.50, 0);
   productDB[48] = new modelBK("BKO-1500", "", "M1537", "Flat Mast Slide, 1 1/4\"(32mm) width", "", "", "", "", "", "", "", "", "", "", 8.50, 0);
   productDB[49] = new modelBK("BKO-1500", "", "M1535", "Round Mast Slide, 1/2\"(13mm) Dia.", "", "", "", "", "", "", "", "", "", "", 8.50, 0);
   productDB[50] = new modelBK("BKO-1500", "", "B1538", "Flat Boom Slide, Specify width", "", "", "", "", "", "", "", "", "", "", 8.50, 0);
   productDB[51] = new modelBK("PO", "", "B1590-R", "Boom Track Fitting to retrofit existing model K1500", "", "", "", "", "", "", "", "", "", "", 71.00, 0);
   productDB[52] = new modelBK("BKO-1500", "", "K1566", "Spring Rod, 3/4\"(19mm) Dia. x 60\"", "", "", "", "", "", "", "", "", "", "", 35.00, 0);
   productDB[53] = new modelBK("BKO-1500", "", "K1560", "Spring Rod, 3/4\"(19mm) Dia. x 49\"", "", "", "", "", "", "", "", "", "", "", 29.50, 0);
   productDB[54] = new modelBK("BKO-1500", "", "K1568", "Spring Rod, 11/16\"(17.5mm) Dia. x 60\"", "", "", "", "", "", "", "", "", "", "", 31.00, 0);
   productDB[55] = new modelBK("BKO-1500", "", "K1561", "Spring Rod, 11/16\"(17.5mm) Dia. x 49\"", "", "", "", "", "", "", "", "", "", "", 27.75, 0);
   productDB[56] = new modelBK("BKO-1500", "", "K1562", "Spring Rod, 5/8\"(16mm) Dia. x 49\"", "", "", "", "", "", "", "", "", "", "", 24.20, 0);
   productDB[57] = new modelBK("BKO-1500", "", "QP-0.312x2.500", "Quick Pin, 5/16\"Dia.x2.5\"lg. (For swivel to mast bracket, vertical pin)", 5.18, 0);
   productDB[58] = new modelBK("BKO-1500", "", "M1551", "Roll Stop Fitting for model K1000", "", "", "", "", "", "", "", "", "", "", 50.00, 0);
//Preformance Options
   productDB[59] = new modelBK("PO", "", "V1021", "2-1 Vang Purchase Plate for boats to 26 feet", "", "", "", "", "", "", "", "", "", "", 34.00, 0);
   productDB[60] = new modelBK("PO", "", "V1521", "2-1 Vang Purchase Plate for boats to 38 feet", "", "", "", "", "", "", "", "", "", "", 55.00, 0);
//
//
//
//
// EasyStow Fenders (Note it uses partNumber for the function addPart(). "Drop Down" "Value" is partNumber.) 
//
//
   productDB[61] = new modelESF("ESF-1", "ESF", "FM0827-black", "8\" Dia. x 27\" Long Standard Duty Fender", "black", 49.00, 0);
   productDB[62] = new modelESF("ESF-1", "ESF", "FM0827-red", "8\" Dia. x 27\" Long Standard Duty Fender", "red", 49.00, 0);
   productDB[63] = new modelESF("ESF-1", "ESF", "FM0827-green", "8\" Dia. x 27\" Long Standard Duty Fender", "green", 49.00, 0);
   productDB[64] = new modelESF("ESF-1", "ESF", "FM0827-blue", "8\" Dia. x 27\" Long Standard Duty Fender", "blue", 49.00, 0);
   productDB[65] = new modelESF("ESF-2", "ESF", "FH0827-blue", "8\" Dia. x 27\" Long Heavy Duty Fender", "blue", 72.00, 0);
   productDB[66] = new modelESF("ESF-3", "ESF", "FC0827-black", "Fleece Cover for 8\" Dia. x 27\" Long Fender", "black", 22.00, 0);
   productDB[67] = new modelESF("ESF-3", "ESF", "FC0827-blue", "Fleece Cover for 8\" Dia. x 27\" Long Fender", "blue", 22.00, 0);
   productDB[68] = new modelESF("ESF-3", "ESF", "FC0827-green", "Fleece Cover for 8\" Dia. x 27\" Long Fender", "green", 22.00, 0);
   productDB[69] = new modelESF("ESF-3", "ESF", "FC0827-red", "Fleece Cover for 8\" Dia. x 27\" Long Fender", "red", 22.00, 0);
   productDB[70] = new modelESF("ESF-3", "ESF", "FC0827-tan", "Fleece Cover for 8\" Dia. x 27\" Long Fender", "tan", 22.00, 0);
   productDB[71] = new modelESF("ESF-4", "ESF", "FM1036-black", "10\" Dia. x 36\" Long Standard Duty Fender", "black", 69.00, 0);
   productDB[72] = new modelESF("ESF-4", "ESF", "FM1036-red", "10\" Dia. x 36\" Long Standard Duty Fender", "red", 69.00, 0);
   productDB[73] = new modelESF("ESF-4", "ESF", "FM1036-green", "10\" Dia. x 36\" Long Standard Duty Fender", "green", 69.00, 0);
   productDB[74] = new modelESF("ESF-4", "ESF", "FM1036-blue", "10\" Dia. x 36\" Long Standard Duty Fender", "blue", 69.00, 0);
   productDB[75] = new modelESF("ESF-5", "ESF", "FH1036-blue", "10\" Dia. x 36\" Long Heavy Duty Fender", "blue", 109.00, 0);
   productDB[76] = new modelESF("ESF-6", "ESF", "FC1036-black", "Fleece Cover for 10\" Dia. x 36\" Long Fender", "black", 31.00, 0);
   productDB[77] = new modelESF("ESF-6", "ESF", "FC1036-blue", "Fleece Cover for 10\" Dia. x 36\" Long Fender", "blue", 31.00, 0);
   productDB[78] = new modelESF("ESF-6", "ESF", "FC1036-green", "Fleece Cover for 10\" Dia. x 36\" Long Fender", "green", 31.00, 0);
   productDB[79] = new modelESF("ESF-6", "ESF", "FC1036-red", "Fleece Cover for 10\" Dia. x 36\" Long Fender", "red", 31.00, 0);
   productDB[80] = new modelESF("ESF-6", "ESF", "FC1036-tan", "Fleece Cover for 10\" Dia. x 36\" Long Fender", "tan", 31.00, 0);
   productDB[81] = new modelESF("ESF-7", "ESF", "FM1244-black", "12\" Dia. x 44\" Long Standard Duty Fender", "black", 85.00, 0);
   productDB[82] = new modelESF("ESF-7", "ESF", "FM1244-red", "12\" Dia. x 44\" Long Standard Duty Fender", "red", 85.00, 0);
   productDB[83] = new modelESF("ESF-7", "ESF", "FM1244-green", "12\" Dia. x 44\" Long Standard Duty Fender", "green", 85.00, 0);
   productDB[84] = new modelESF("ESF-7", "ESF", "FM1244-blue", "12\" Dia. x 44\" Long Standard Duty Fender", "blue", 85.00, 0);
   productDB[85] = new modelESF("ESF-8", "ESF", "FH1244-blue", "12\" Dia. x 44\" Long Heavy Duty Fender", "blue", 145.00, 0);
   productDB[86] = new modelESF("ESF-9", "ESF", "FC1244-black", "Fleece Cover for 12\" Dia. x 44\" Long Fender", "black", 40.00, 0);
   productDB[87] = new modelESF("ESF-9", "ESF", "FC1244-blue", "Fleece Cover for 12\" Dia. x 44\" Long Fender", "blue", 40.00, 0);
   productDB[88] = new modelESF("ESF-9", "ESF", "FC1244-green", "Fleece Cover for 12\" Dia. x 44\" Long Fender", "green", 40.00, 0);
   productDB[89] = new modelESF("ESF-9", "ESF", "FC1244-red", "Fleece Cover for 12\" Dia. x 44\" Long Fender", "red", 40.00, 0);
   productDB[90] = new modelESF("ESF-9", "ESF", "FC1244-tan", "Fleece Cover for 12\" Dia. x 44\" Long Fender", "tan", 40.00, 0);
   productDB[91] = new modelESF("ESF-10", "ESF", "FM1848-black", "18\" Dia. x 48\" Long Standard Duty Fender", "black", 109.00, 0);
   productDB[92] = new modelESF("ESF-10", "ESF", "FM1848-red", "18\" Dia. x 48\" Long Standard Duty Fender", "red", 109.00, 0);
   productDB[93] = new modelESF("ESF-10", "ESF", "FM1848-green", "18\" Dia. x 48\" Long Standard Duty Fender", "green", 109.00, 0);
   productDB[94] = new modelESF("ESF-10", "ESF", "FM1848-blue", "18\" Dia. x 48\" Long Standard Duty Fender", "blue", 109.00, 0);
   productDB[95] = new modelESF("ESF-11", "ESF", "FH0660-blue", "6\" Dia. x 60\" Long Heavy Duty Fender", "blue", 62.00, 0);
   productDB[96] = new modelESF("ESF-12", "ESF", "FC0660-black", "Fleece Cover for 6\" Dia. x 60\" Long Fender", "black", 30.00, 0);
   productDB[97] = new modelESF("ESF-12", "ESF", "FC0660-blue", "Fleece Cover for 6\" Dia. x 60\" Long Fender", "blue", 30.00, 0);
   productDB[98] = new modelESF("ESF-12", "ESF", "FC0660-green", "Fleece Cover for 6\" Dia. x 60\" Long Fender", "green", 30.00, 0);
   productDB[99] = new modelESF("ESF-12", "ESF", "FC0660-red", "Fleece Cover for 6\" Dia. x 60\" Long Fender", "red", 30.00, 0);
   productDB[100] = new modelESF("ESF-12", "ESF", "FC0660-tan", "Fleece Cover for 6\" Dia. x 60\" Long Fender", "tan", 30.00, 0);
   productDB[101] = new modelESF("ESF-13", "ESF", "FH0860-blue", "8\" Dia. x 60\" Long Heavy Duty Fender", "blue", 99.00, 0);
   productDB[102] = new modelESF("ESF-14", "ESF", "FC0860-black", "Fleece Cover for 8\" Dia. x 60\" Long Fender", "black", 36.00, 0);
   productDB[103] = new modelESF("ESF-14", "ESF", "FC0860-blue", "Fleece Cover for 8\" Dia. x 60\" Long Fender", "blue", 36.00, 0);
   productDB[104] = new modelESF("ESF-14", "ESF", "FC0860-green", "Fleece Cover for 8\" Dia. x 60\" Long Fender", "green", 36.00, 0);
   productDB[105] = new modelESF("ESF-14", "ESF", "FC0860-red", "Fleece Cover for 8\" Dia. x 60\" Long Fender", "red", 36.00, 0);
   productDB[106] = new modelESF("ESF-14", "ESF", "FC0860-tan", "Fleece Cover for 8\" Dia. x 60\" Long Fender", "tan", 36.00, 0);
   productDB[107] = new modelESF("ESF-15", "ESF", "FH1060-blue", "10\" Dia. x 60\" Long Heavy Duty Fender", "blue", 149.00, 0);
   productDB[108] = new modelESF("ESF-16", "ESF", "FC1060-black", "Fleece Cover for 10\" Dia. x 60\" Long Fender", "black", 42.00, 0);
   productDB[109] = new modelESF("ESF-16", "ESF", "FC1060-blue", "Fleece Cover for 10\" Dia. x 60\" Long Fender", "blue", 42.00, 0);
   productDB[110] = new modelESF("ESF-16", "ESF", "C1060-green", "Fleece Cover for 10\" Dia. x 60\" Long Fender", "green", 42.00, 0);
   productDB[111] = new modelESF("ESF-16", "ESF", "C1060-red", "Fleece Cover for 10\" Dia. x 60\" Long Fender", "red", 42.00, 0);
   productDB[112] = new modelESF("ESF-16", "ESF", "FC1060-tan", "Fleece Cover for 10\" Dia. x 60\" Long Fender", "tan", 42.00, 0);
   productDB[113] = new modelESF("ESF-17", "ESF", "FH1260-blue", "12\" Dia. x 60\" Long Heavy Duty Fender", "blue", 179.00, 0);
   productDB[114] = new modelESF("ESF-18", "ESF", "FC1260-black", "Fleece Cover for 12\" Dia. x 60\" Long Fender", "black", 50.00, 0);
   productDB[115] = new modelESF("ESF-18", "ESF", "FC1260-blue", "Fleece Cover for 12\" Dia. x 60\" Long Fender", "blue", 50.00, 0);
   productDB[116] = new modelESF("ESF-18", "ESF", "FC1260-green", "Fleece Cover for 12\" Dia. x 60\" Long Fender", "green", 50.00, 0);
   productDB[117] = new modelESF("ESF-18", "ESF", "FC1260-red", "Fleece Cover for 12\" Dia. x 60\" Long Fender", "red", 50.00, 0);
   productDB[118] = new modelESF("ESF-18", "ESF", "FC1260-tan", "Fleece Cover for 12\" Dia. x 60\" Long Fender", "tan", 50.00, 0);
   productDB[119] = new modelESF("ESF-19", "ESF", "FR1036", "10\" Dia. x 36\" Long 40 oz. Urethane Fender", "black", 185.00, 0);
   productDB[120] = new modelESF("ESF-20", "ESF", "FR1244", "12\" Dia. x 44\" Long 40 oz. Urethane Fender", "black", 255.00, 0);
   productDB[121] = new modelESF("ESF-21", "ESF", "FR2452", "24\" Dia. x 52\" Long 40 oz. Urethane Fender", "black", 475.00, 0);
   productDB[122] = new modelESF("ESF-22", "ESF", "FR3660", "36\" Dia. x 60\" Long 40 oz. Urethane Fender", "black", 680.00, 0);
   productDB[123] = new modelESF("ESF-23", "", "HOAP", "High Output Air Pump", "", 12.00, 0);
   productDB[124] = new modelESF("ESF-23", "", "MAP", "Mini Air Pump", "", 10.00, 0);
//
//
//
//
// EasyStow Race Marks (Note it uses partNumber for the function addPart(). "Drop Down" "Value" is partNumber.)
//
//
   productDB[125] = new modelESRM("ESRM-1", "ESMR", "IM400-orange", "4' Easystow Race Mark", "orange", 269.00, 0);
   productDB[126] = new modelESRM("ESRM-1", "ESMR", "IM400-yellow", "4' Easystow Race Mark", "yellow", 269.00, 0);
   productDB[127] = new modelESRM("ESRM-1", "ESMR", "IM400-green ", "4' Easystow Race Mark", "green ", 269.00, 0);
   productDB[128] = new modelESRM("ESRM-2", "ESMR", "IM600-orange", "6' Easystow Race Mark", "orange", 329.00, 0);
   productDB[129] = new modelESRM("ESRM-2", "ESMR", "IM600-yellow", "6' Easystow Race Mark", "yellow", 329.00, 0);
   productDB[130] = new modelESRM("ESRM-2", "ESMR", "IM600-green ", "6' Easystow Race Mark", "green ", 329.00, 0);
//
//
//
//
// Rolling Bail (Note it uses partNumber for the function addPart(). "Drop Down" "Value" is partNumber.)
//
//
   productDB[131] = new modelRB("RB-1", "", "R057-082-B", "Rolling Bail <b>with</b> custom bolt - inside width 2.25\" - depth 3.25\"", "2.25\" wide x 3.25\" deep", 37.25, 0);
   productDB[132] = new modelRB("RB-1", "", "R064-095-B", "Rolling Bail <b>with</b> custom bolt - inside width 2.50\" - depth 3.75\"", "2.50\" wide x 3.75\" deep", 37.25, 0);
   productDB[133] = new modelRB("RB-1", "", "R067-095-B", "Rolling Bail <b>with</b> custom bolt - inside width 2.62\" - depth 3.75\"", "2.62\" wide x 3.75\" deep", 37.25, 0);
   productDB[134] = new modelRB("RB-1", "", "R070-095-B", "Rolling Bail <b>with</b> custom bolt - inside width 2.75\" - depth 3.75\"", "2.75\" wide x 3.75\" deep", 37.25, 0);
   productDB[135] = new modelRB("RB-1", "", "R076-102-B", "Rolling Bail <b>with</b> custom bolt - inside width 3.00\" - depth 4.00\"", "3.00\" wide x 4.00\" deep", 37.25, 0);
   productDB[136] = new modelRB("RB-2", "", "R076-114-B", "Rolling Bail <b>with</b> custom bolt - inside width 3.00\" - depth 4.50\"", "3.00\" wide x 4.50\" deep", 45.50, 0);
   productDB[137] = new modelRB("RB-2", "", "R082-114-B", "Rolling Bail <b>with</b> custom bolt - inside width 3.25\" - depth 4.50\"", "3.25\" wide x 4.50\" deep", 45.50, 0);
   productDB[138] = new modelRB("RB-2", "", "R089-121-B", "Rolling Bail <b>with</b> custom bolt - inside width 3.50\" - depth 4.75\"", "3.50\" wide x 4.75\" deep", 45.50, 0);
   productDB[139] = new modelRB("RB-2", "", "R095-127-B", "Rolling Bail <b>with</b> custom bolt - inside width 3.75\" - depth 5.00\"", "3.75\" wide x 5.00\" deep", 45.50, 0);
   productDB[140] = new modelRB("RB-2", "", "R102-127-B", "Rolling Bail <b>with</b> custom bolt - inside width 4.00\" - depth 5.00\"", "4.00\" wide x 5.00\" deep", 45.50, 0); 
   productDB[141] = new modelRB("RB-3", "", "R057-082", "Rolling Bail <b>without</b> custom bolt - inside width 2.25\" - depth 3.25\"", "2.25\" wide x 3.25\" deep", 32.50, 0);
   productDB[142] = new modelRB("RB-3", "", "R064-095", "Rolling Bail <b>without</b> custom bolt - inside width 2.50\" - depth 3.75\"", "2.50\" wide x 3.75\" deep", 32.50, 0);
   productDB[143] = new modelRB("RB-3", "", "R067-095", "Rolling Bail <b>without</b> custom bolt - inside width 2.62\" - depth 3.75\"", "2.62\" wide x 3.75\" deep", 32.50, 0);
   productDB[144] = new modelRB("RB-3", "", "R070-095", "Rolling Bail <b>without</b> custom bolt - inside width 2.75\" - depth 3.75\"", "2.75\" wide x 3.75\" deep", 32.50, 0);
   productDB[145] = new modelRB("RB-3", "", "R076-102", "Rolling Bail <b>without</b> custom bolt - inside width 3.00\" - depth 4.00\"", "3.00\" wide x 4.00\" deep", 32.50, 0);
   productDB[146] = new modelRB("RB-4", "", "R076-114", "Rolling Bail <b>without</b> custom bolt - inside width 3.00\" - depth 4.50\"", "3.00\" wide x 4.50\" deep", 40.00, 0);
   productDB[147] = new modelRB("RB-4", "", "R082-114", "Rolling Bail <b>without</b> custom bolt - inside width 3.25\" - depth 4.50\"", "3.25\" wide x 4.50\" deep", 40.00, 0);
   productDB[148] = new modelRB("RB-4", "", "R089-121", "Rolling Bail <b>without</b> custom bolt - inside width 3.50\" - depth 4.75\"", "3.50\" wide x 4.75\" deep", 40.00, 0);
   productDB[149] = new modelRB("RB-4", "", "R095-127", "Rolling Bail <b>without</b> custom bolt - inside width 3.75\" - depth 5.00\"", "3.75\" wide x 5.00\" deep", 40.00, 0);
   productDB[150] = new modelRB("RB-4", "", "R102-127", "Rolling Bail <b>without</b> custom bolt - inside width 4.00\" - depth 5.00\"", "4.00\" wide x 5.00\" deep", 40.00, 0); 
   productDB[151] = new modelRB("RV", "","RSSR17", "\"V\" roller with shackle for existing rod type bails.","One size fits all.", 29.00, 0);
//
//
//
//
// FastTales (Note it uses partNumber for the function addPart().) 
//
//
   productDB[152] = new modelFT("FT", "", "FT1", "Package of wool yarn tell tales - 7 red and 7 green.", 5.50, 0);
//
//
//
//
// This is need at the end to make the last store work correctly.
//
//
   productDB[153] = new modelEND("END");

   checkQuantity();
}

function checkQuantity() 
{
    var ordersCookie = findOrder("orders");
    if (!ordersCookie) {return}
    var userOrders = ordersCookie.split("+");
    for (var n = 0; n < userOrders.length; n++) 
    {
        var orderNum = userOrders[n];     
        productDB[n].quantity = orderNum;
        if (orderNum > 0) 
        {
            total_ordered++;
        }
    } 
}
function findOrder(findName) 
 {
    var entireCookie;
    var cookieName;
    var cookieValue;
    var cookieArray = document.cookie.split("; ");
   for (var n = 0; n < cookieArray.length; n++) 
   {  
        entireCookie = cookieArray[n].split("=");
        cookieName = entireCookie[0];
        cookieValue = entireCookie[1];
        if (cookieName == findName) 
        {
            return unescape(cookieValue);
        }
    }
    return null;
}


