function calcSpine() {
	if (document.layers) {
		var form = document.layers['form1']; 
	} else {
		var form = document.all('form1');
	}
	var paper = form.paper.value;
	var pages = parseInt(form.pages.value);
	var factor, calculatedspine;
	switch(paper) {
		case "Web":
			factor = .0019;
			break;
		case "50# Offset":
			factor = .002232;
			break;
		case "60# Offset":
			factor = .002517;
			break;
		case "70# Offset":
			factor = .002802;
			break;
		case "80# Offset":
			factor = .003135;
			break;
		case "50# Matte":
			factor = .001852;
			break;
		case "60# Matte":
			factor = .002232;
			break;
		case "70# Matte":
			factor = .00266;
			break;
		case "80# Matte":
			factor = .002802;
			break;
		case "50# Gloss":
			factor = .001472;
			break;
		case "60# Gloss":
			factor = .001662;
			break;
		case "70# Gloss":
			factor = .002185;
			break;
		case "80# Gloss":
			factor = .002517;
			break;
		default: {
			alert("Please choose a paper type.");
			return false;
		}
	}
	if ((pages % 2) != 0) {
		alert("Number of pages must be even.");
		return false;
	} else if ((pages % 16) != 0 && paper == "Web") {
		alert("All web books must be in multiples of 16 pages.");
		return false;
	} else if ((pages % 4) != 0) {
		alert("Warning: Unless special arrangements are made, all books must be in multiples of 4 pages.");
	} else if ((pages % 8) != 0) {
		alert("Note: Although printing in multiples of 4 is possible, printing in multiples of 8 " +
			"and 16 is more economical");
	}


	calculatedspine  = factor * pages;
	if (calculatedspine < .125) {
		var alerttext = "A " + pages + " page book on " +
			paper + " will have a spine of approximately " + 
			round(calculatedspine) + "\".\n\nHowever, " + round(calculatedspine) + 
			"\" is below 1/8\". Spines must be at least 1/8\" thick.";
	} else if (calculatedspine > 1.5) {
		var alerttext = "A " + pages + " page book on " +
			paper + " will have a spine of approximately " + 
			round(calculatedspine) + "\".\n\nHowever, " + round(calculatedspine) + 
			"\" is above 1-1/2\". Maximum spine size is 1-1/2\".";
	} else {
		var alerttext = "A " + pages + " page book on " +
			paper + " will have a spine of approximately " +
			round(calculatedspine) + "\"."; 
	}
	alert(alerttext);
	return false;
}

function round(num) {
	var precision = 4;
	var temp = "" + num;
	var decpoint = temp.indexOf(".");
	return temp.substring(0, decpoint + precision + 1);
}

