// copyright 2010 Laura Shaffer Mills// keep original size and units so math stays more accuratevar gOrigSize = 0;var gOrigUnits = 0;// keep final size and units so math stays more accurate (when calculate backward to clay size)var gFinalSize = 0;var gFinalUnits = 0;// set up "onload" to initializewindow.onload = function() {	// disable "Enter" key for submitting form//	document.onKeyPress = ignoreEnterKey;	// original clay -> final size	document.getElementById("inClayType").onchange = calcFinal;	document.getElementById("inOrigUnits").onchange = changeOriginalUnits;	document.getElementById("inOrigSize").onchange = newOriginalNum;	document.getElementById("inFinalUnits").onchange = calcFinal;	// final size -> original clay	document.getElementById("inClayTypeBack").onchange = calcOriginalBack;	document.getElementById("inFinalUnitsBack").onchange = changeFinalUnitsBack;	document.getElementById("inFinalSizeBack").onchange = newFinalNumBack;	document.getElementById("inOrigUnitsBack").onchange = calcOriginalBack;//	document.getElementById("inOrigUnitsBack").onchange = function(evt) {myCall(param1,evt);};	initializeConversions();	makeShrinkageArray();	fillDropdownClayTypes("inClayType");	fillDropdownClayTypes("inClayTypeBack");}			// onload()/*// calculate the final size, after shrinkingfunction calcFinal() {	var clayType = document.getElementById("inClayType").value;	var finalUnits = document.getElementById("inFinalUnits").value;	var finalSize = 0;	// find final size, using original size and units	// don't read original size and units from web page --	//    used globals for original units and size, so conversions don't mess with accuracy	finalSize = gOrigSize * (1 - gkaShrink[clayType]);		// final size in original units	// now change final size to correct units before write to output	if (gOrigUnits != finalUnits)		finalSize = convertByUnit(finalSize, gOrigUnits, finalUnits);	// put answer on page	replaceNodeText("outFinalSize",finalSize.toFixed(2));}			// calcFinal()*/// calculate the final size, after shrinkingfunction calcFinal() {	var clayType = document.getElementById("inClayType").value;	var finalUnits = document.getElementById("inFinalUnits").value;	var origSize = 0;	origSize = gOrigSize;	// don't read original size and units from web page --	//    used globals for original units and size, so conversions don't mess with accuracy	if (gOrigUnits != finalUnits)		// change original size to correct units		origSize = convertByUnit(gOrigSize, gOrigUnits, finalUnits);	// put answer on page	replaceNodeText("outFinalSize",gkaoShrink[clayType].rangeStrShrinkToFired(origSize));}			// calcFinal()/*// calculate the original size, before shrinkingfunction calcOriginalBack() {	var clayType = document.getElementById("inClayTypeBack").value;	var origUnits = document.getElementById("inOrigUnitsBack").value;	var origSize = 0;	// find original size, using final size and units	// don't read 'final' size and units from web page --	//    used globals for final units and size, so conversions don't mess with accuracy	origSize = gFinalSize / (1 - gkaShrink[clayType]);		// original size in final units	// now change original size to correct units before write to output	if (gFinalUnits != origUnits)		origSize = convertByUnit(origSize, gFinalUnits, origUnits);	// put answer on page	replaceNodeText("outOrigSizeBack",origSize.toFixed(2));}			// calcOriginalBack()*/// calculate the original size, before shrinkingfunction calcOriginalBack() {	var clayType = document.getElementById("inClayTypeBack").value;	var origUnits = document.getElementById("inOrigUnitsBack").value;	var finalSize = 0;	finalSize = gFinalSize;	// don't read 'final' size and units from web page --	//    used globals for final units and size, so conversions don't mess with accuracy	if (gFinalUnits != origUnits)		// change original size to correct units		finalSize = convertByUnit(gFinalSize, gFinalUnits, origUnits);	// put answer on page	replaceNodeText("outOrigSizeBack",gkaoShrink[clayType].rangeStrFromClay(finalSize));}			// calcOriginalBack()// change the final value to new units// still keep the value and 'final' units *originally* entered, to keep math more consistentfunction changeFinalUnitsBack() {	var newUnits = document.getElementById("inFinalUnitsBack").value;	var newFinalSize = 0;	if (gFinalUnits  == newUnits) {			// units as originally entered		newFinalSize = gFinalSize;	}	else {		// the 'final' units have changed, so recalculate 'final' size value		// use gFinalSize for calculation; find newFinalSize in newUnits		newFinalSize = convertByUnit(gFinalSize, gFinalUnits, newUnits);	}	document.getElementById("inFinalSizeBack").value = newFinalSize.toFixed(2);}			// changeFinalUnitsBack()// change the original value to new units// still keep the value and units *originally* entered, to keep math more consistentfunction changeOriginalUnits() {	var newUnits = document.getElementById("inOrigUnits").value;	var newOrigSize = 0;	if (gOrigUnits  == newUnits) {			// units as originally entered		newOrigSize = gOrigSize;	}	else {		// the "original" units have changed, so recalculate "original" size value		// use gOrigSize for calculation; find newOrigSize in newUnits		newOrigSize = convertByUnit(gOrigSize, gOrigUnits, newUnits);	}	document.getElementById("inOrigSize").value = newOrigSize.toFixed(2);}			// changeOriginalUnits()// ignore the enter/return keyfunction ignoreSubmit() {	return false;}			// ignoreSubmit()// verify inputfunction newFinalNumBack() {	// when user changes number for size, reset units to current value	gFinalUnits = document.getElementById("inFinalUnitsBack").value;	gFinalSize = validatePosNumber(this.value, "inFinalValidation", "Enter a number.");	if (-1 == gFinalSize)		replaceNodeText("outOrigSizeBack","");		// clear result	else {		calcOriginalBack();	}}			// newFinalNumBack()// verify inputfunction newOriginalNum() {	// when user changes number for size, reset units to current value	gOrigUnits = document.getElementById("inOrigUnits").value;	gOrigSize = validatePosNumber(this.value, "inOriginalValidation", "Enter a number.");	if (-1 == gOrigSize)		replaceNodeText("outFinalSize","");		// clear result	else {		calcFinal();	}}			// newOriginalNum()
