function editFormSubmit() {
	var notes = prompt('Please provide a detailed edit note below.');
	if (notes == null || notes == "") return false;
	document.editForm.txtEditNotes.value = notes;
	return true;
}

//section toggle. gneral function for show/hide toggling a form section w/ a condition
//, and optionally also disabling a related form element.
toggleElement.hElement1On = [];
function initToggleElement(id, bInitValue, sElement1Block, sElement1Input, sElement2Block, sElement2Input)
{
	bInitValue = (bInitValue == 1) ? true : false;
	toggleElement.hElement1On[id] = [bInitValue, sElement1Block, sElement1Input, sElement2Block, sElement2Input];
}

function toggleElement(id, bValue)
{
	//only toggle if the relevant object is defined.
	//if bValue is null, toggle to opposite value. Otherwise toggle to specified value.
	bToggleToElement1 = (!bValue) ? !toggleElement.hElement1On[id][0] : ((bValue == 1) ? true : false);
	if (bToggleToElement1) {
		if (toggleElement.hElement1On[id][3]) { document.getElementById(toggleElement.hElement1On[id][3]).style.display = "none"; }
		if (toggleElement.hElement1On[id][4]) { document.getElementById(toggleElement.hElement1On[id][4]).disabled = true; }
		if (toggleElement.hElement1On[id][2]) { document.getElementById(toggleElement.hElement1On[id][2]).disabled = false; }
		if (toggleElement.hElement1On[id][1]) { document.getElementById(toggleElement.hElement1On[id][1]).style.display = "block"; }
		toggleElement.hElement1On[id][0] = true;
	} else {
		if (toggleElement.hElement1On[id][1]) { document.getElementById(toggleElement.hElement1On[id][1]).style.display = "none"; }
		if (toggleElement.hElement1On[id][2]) { document.getElementById(toggleElement.hElement1On[id][2]).disabled = true; }
		if (toggleElement.hElement1On[id][4]) { document.getElementById(toggleElement.hElement1On[id][4]).disabled = false; }
		if (toggleElement.hElement1On[id][3]) { document.getElementById(toggleElement.hElement1On[id][3]).style.display = "block"; }
		toggleElement.hElement1On[id][0] = false;
	}
}

function addLoadListener(fn) {
	if (typeof window.addEventListener != 'undefined') {
		window.addEventListener('load', fn, false);
	} else if (typeof document.addEventListener != 'undefined') {
		document.addEventListener('load', fn, false);
	} else if (typeof window.attachEvent != 'undefined') {
		window.attachEvent('onload', fn);
	} else {
		var oldfn = window.onload;
		if (typeof window.onload != 'function') {
			window.onload = fn;
		} else {
			window.onload = function() {
				oldfn();
				fn();
			}
		}
	}
}

function easeIn(t,b,c,d) {
	return c*t*t/(d*d) + b;
}
function easeOut(t,b,c,d) {
	return -c*t*t/(d*d) + 2*c*t/d + b;
}
function easeInOut(t,b,c,d) {
		if (t < d/2) return 2*c*t*t/(d*d) + b;
		var ts = t - d/2;
		return -2*c*ts*ts/(d*d) + 2*c*ts/d + c/2 + b;
}