function alterContent(divID, content)
{	if (document.all)
	{	document.all[divID].innerHTML=content;
	}
	else if (document.getElementById)
	{	rng = document.createRange();
		el = document.getElementById(divID);
		rng.setStartBefore(el);
		htmlFrag = rng.createContextualFragment(content);
		while (el.hasChildNodes())
		{	el.removeChild(el.lastChild);
		}
		el.appendChild(htmlFrag);
	}
}

function changeClass(id, className)
{	if (document.all)
	{	document.all[id].className=className;
	}
	else if (document.getElementById)
	{	document.getElementById(id).className = className;
	}
}

function toggleDivVisibility(divID)
{	var elem, vis;
	if (document.getElementById)
	{	elem = document.getElementById(divID);
	}
	else if (document.all)
	{	elem = document.all[divID];
	}
	else if(document.layers)
	{	elem = document.layers[divID];
	}
	vis = elem.style;
	if (vis.display == '' && elem.offsetWidth != undefined && elem.offsetHeight != undefined)
	{	vis.display = (elem.offsetWidth != 0 && elem.offsetHeight != 0) ?'block':'none';
	}
	vis.display = (vis.display==''||vis.display=='block')?'none':'block';
}

function showDiv(divID)
{	var elem, vis;
	if (document.getElementById)
	{	elem = document.getElementById(divID);
	}
	else if (document.all)
	{	elem = document.all[divID];
	}
	else if(document.layers)
	{	elem = document.layers[divID];
	}
	vis = elem.style;
	if (vis.display == '' && elem.offsetWidth != undefined && elem.offsetHeight != undefined)
	{	vis.display = (elem.offsetWidth != 0 && elem.offsetHeight != 0) ?'block':'none';
	}
	vis.display = "block";
}

function hideDiv(divID)
{	var elem, vis;
	if (document.getElementById)
	{	elem = document.getElementById(divID);
	}
	else if (document.all)
	{	elem = document.all[divID];
	}
	else if(document.layers)
	{	elem = document.layers[divID];
	}
	vis = elem.style;
	if (vis.display == '' && elem.offsetWidth != undefined && elem.offsetHeight != undefined)
	{	vis.display = (elem.offsetWidth != 0 && elem.offsetHeight != 0) ?'block':'none';
	}
	vis.display = "none";
}


function validEmail(emailString)
{	var regularExpression  = /^([a-zA-Z0-9_\.\'\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (regularExpression.test(emailString))
	{	return(true);
	}
	return(false);
}

function validNumber(string, fixedLength)
{	if (fixedLength == null)
	{	fixedLength == string.length
	}
	if (string.length != fixedLength)
	{	return(false);
	}
	for (index = 0; index < fixedLength; index++)
	{	if (!isDigit(string.charAt(index)))
		{	return(false);
		}
	}
	return(true);
}

function isDigit(c)
{	return "0123456789.".indexOf(c) == -1 ? 0 : 1;
}

function validDate(dateStr, format)
{	if (format == null)
	{	format = "MDY";
	}
	format = format.toUpperCase();
	if (format.length != 3)
	{	format = "MDY";
	}
	if ((format.indexOf("M") == -1) || (format.indexOf("D") == -1) || (format.indexOf("Y") == -1))
	{	format = "MDY";
	}
	if (format.substring(0, 1) == "Y")
	{	// If the year is first
		var reg1 = /^\d{2}(\-|\/|\.)\d{1,2}\1\d{1,2}$/
		var reg2 = /^\d{4}(\-|\/|\.)\d{1,2}\1\d{1,2}$/
	}
	else if (format.substring(1, 2) == "Y")
	{	// If the year is second
		  var reg1 = /^\d{1,2}(\-|\/|\.)\d{2}\1\d{1,2}$/
		  var reg2 = /^\d{1,2}(\-|\/|\.)\d{4}\1\d{1,2}$/
	}
	else
	{	// The year must be third
		  var reg1 = /^\d{1,2}(\-|\/|\.)\d{1,2}\1\d{2}$/
		  var reg2 = /^\d{1,2}(\-|\/|\.)\d{1,2}\1\d{4}$/
	}
	// If it doesn't conform to the right format (with either a 2 digit year or 4 digit year), fail
	if ((reg1.test(dateStr) == false) && (reg2.test(dateStr) == false))
	{	return false;
	}
	var parts = dateStr.split(RegExp.$1); // Split into 3 parts based on what the divider was
	// Check to see if the 3 parts end up making a valid date
	if (format.substring(0, 1) == "M")
	{	var mm = parts[0];
	}
	else if (format.substring(1, 2) == "M")
	{	var mm = parts[1];
	}
	else
	{	var mm = parts[2];
	}
	if (format.substring(0, 1) == "D")
	{	var dd = parts[0];
	}
	else if (format.substring(1, 2) == "D")
	{	var dd = parts[1];
	}
	else
	{	var dd = parts[2];
	}
	if (format.substring(0, 1) == "Y")
	{	var yy = parts[0];
	}
	else if (format.substring(1, 2) == "Y")
	{	var yy = parts[1];
	}
	else
	{	var yy = parts[2];
	}
	if (parseFloat(yy) <= 50)
	{	yy = (parseFloat(yy) + 2000).toString();
	}
	if (parseFloat(yy) <= 99)
	{	yy = (parseFloat(yy) + 1900).toString();
	}
	var dt = new Date(parseFloat(yy), parseFloat(mm)-1, parseFloat(dd), 0, 0, 0, 0);
	if (parseFloat(dd) != dt.getDate())
	{	return false;
	}
	if (parseFloat(mm)-1 != dt.getMonth())
	{	return false;
	}
	return true;
}

function checkValue(element, defaultValue)
{	if (element.value == '')
	{	element.value = defaultValue;
	}
}

function clearField(element, defaultValue)
{	if (element.value == defaultValue)
	{	element.value = '';
	}
}
