// common js functions that work on all sheds //ramp functions function disableRamp(side) { document.getElementById('ramp' + side).checked = false; document.getElementById('ramp' + side).disabled = true; document.getElementById('rampLabel' + side).style.color = "#999"; switch (side) { case "Front": Wall1.Ramp = 0; break; case "Left": Wall2.Ramp = 0; break; case "Right": Wall4.Ramp = 0; break; } } function enableRamp(side) { document.getElementById('ramp' + side).disabled = false; document.getElementById('rampLabel' + side).style.color = "#000"; } function setRamp(element,wall) { if (document.getElementById(element).checked == true) { wall.Ramp = 1; } else { wall.Ramp = 0; } } function getRampPrice(wall) { if (wall.Ramp == 1) { if (wall.Door_width > 60) { rPrice = 170; } else if (wall.Door_width > 0 && wall.Door_width <= 60) { rPrice = 85; } } else { rPrice = 0; } return rPrice; } // calculates the price of the wall's shutters function getShutterPrice(wall) { if (Shed.Shutter_color != ""){ if (wall.Window_size == "large") { var price = wall.Number_of_windows * 20; } else if (wall.Window_size == "small") { var price = wall.Number_of_windows * 15; } else { var price = 0; } } else { var price = 0; } return price; } // read radio buttons function readRadioAndCheck(name) { for (i=0;i < document.getElementsByName(name).length;i++) { if (document.getElementsByName(name)[i].checked == true) { var num = document.getElementsByName(name)[i].value; } } return num; } // calculates the price of the wall's windows function getWindowPrice(wall) { if (wall.Window_size == "large") { var price = wall.Number_of_windows * 60; } else if (wall.Window_size == "small") { var price = wall.Number_of_windows * 50; } else { var price = 0; } return price; } // makes sure that all of the fields that need to be filled out are filled function validate() { var alertMessage = "The following fields need to be specified:\n\n"; if (readSelect(document.quoteForm.size) == "0") { alertMessage += "Size\n"; } if (readSelect(document.quoteForm.siding) == "") { alertMessage += "Exterior siding and color\n"; } if (readSelect(document.quoteForm.shingles) == "") { alertMessage += "Shingles\n"; } if (readSelect(document.quoteForm.trim) == "") { alertMessage += "Trim\n"; } if (document.quoteForm.zipcode.value.length != 5) { alertMessage += "Shipping zip code\n"; } if (Shed.Shed_type != "Mini_Barn") { if (document.getElementById('noDoorFront').checked == true && document.getElementById('noDoorLeft').checked == true && document.getElementById('noDoorRight').checked == true) { alertMessage += "Make sure you have a door checked\n"; } } if (alertMessage.length > 54) { alert(alertMessage); } else if (invalidZip > 0) { alert("Please enter a valid zip code in the zip code field"); } else if (tooFar > 0) { alert("The zip code specified is out of our service area"); } else { submitTheForm(); } } // reads select boxes function readSelect(selectName) { var selOp = selectName.selectedIndex; var selValue = selectName.options[selOp].value; return selValue; } // gives a description of a given door type function getDoor(door,ramp) { var description; for (i=0;i < document.getElementsByName(door).length;i++) { if (document.getElementsByName(door)[i].checked == true) { if (i == 0) { description = "
No door
"; } else if (i == 1) { description = "
Single wooden door
"; } else if (i == 2) { description = "
Single steel door
"; } else if (i == 3) { description = "
Single steel door with window
"; } else if (i == 4) { description = "
Double wooden door
"; } else if (i == 5) { description = "
8x6 garage door
"; } else if (i == 6) { description = "
9x7 garage door
"; } } } if (ramp) { if (document.getElementById(ramp).checked == true) { description += "
Add a ramp up to this door
"; } else { description += "
No ramp
"; } } return description; } // gives a description for a given wall's windows function getWindow(window) { for (i = 0; i < document.getElementsByName(window).length; i++) { if (document.getElementsByName(window)[i].checked == true) { if (i == 0) { return "No windows"; } else if (i == 1) { return "One small window"; } else if (i == 2) { return "Two small windows"; } else if (i == 3) { return "One large window"; } else if (i == 4) { return "Two large windows"; } } } } // gets the flooring type for description function getFlooring() { for (i = 0; i < document.getElementsByName('flooring').length; i++) { if (document.getElementsByName('flooring')[i].checked == true) { if (i == 0) { return "Standard floor"; } else if (i == 1) { return "Double floor and 12 inch on center joist"; } else if (i == 2) { return "12 inch on center joist"; } else if (i == 3) { return "Pressure treated floor joists"; } else if (i == 4) { return "Pressure treated floor joists and plywood"; } } } } // returns the shipping method function getShipMethod() { for (i = 0; i < document.getElementsByName('shipOption').length; i++) { if (document.getElementsByName('shipOption')[i].checked == true) { if (i == 0) { return "Ship shed pre-built"; } else if (i == 1) { return "Ship shed in a shrinkwrapped kit that the customer puts together"; } else if (i == 2) { return "We build the shed on site"; } } } }