function getItem(id)
{
	// Get element and return
	var itm = false;
	if(document.getElementById)
		itm = document.getElementById(id);
	else if(document.all)
		itm = document.all[id];
	else if(document.layers)
		itm = document.layers[id];
	return itm;
}
function toggle_Me(element_id)
{
	if (getItem(element_id).style.display == "none")
		getItem(element_id).style.display = "";
	else getItem(element_id).style.display = "none";
	return;
}
function show_Me(element_id)
{
	getItem(element_id).style.display = "";
	return;
}
function hide_Me(element_id)
{
	getItem(element_id).style.display = "none";
	return;
}

//	#######################################################################################################
//	Function: imposeMaxLength(Object, maxLength)
//		Used to limit number of characters entered into a text form input field
//	Usage:
//		<textarea name="myName" onKeyPress="return imposeMaxLength(this, 15);" ></textarea>

	function imposeMaxLength(Object, MaxLen)
	{
	  return (Object.value.length < MaxLen);
	}

//	#######################################################################################################
//	Function: alphanumeric(Object, Event, [bool impose], [maxLength])
//		Used to allow only specific Letters, Numbers, and Punctuation into a text form input field
//	Usage:
//		<textarea name="myName" onKeyPress="return alphanumeric(this, event);"></textarea>
//	Options:
//		if third parameter is 'true', imposeMaxLength is also evaluated, with maxlength of fourth parameter

	function alphanumeric(myfield, e, impose, myLength)
	{
		var key;
		var keychar;

		if (window.event) key = window.event.keyCode;
		else if (e) key = e.which;
		else return true;

		keychar = String.fromCharCode(key);

		// If maxlength is not required
		if (impose != true) {

			// control keys
			if ((key==null) || (key==0) || (key==8) || (key==9) || (key==13) || (key==27) ) return true;

			// accepted characters
			else if ((("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.,\"!?$'&;@-_():/- ").indexOf(keychar) > -1)) return true;

			else return false;
		}
		// If maxlength is required
		else {

			// control keys
			if ((key==null) || (key==0) || (key==8) || (key==9) || (key==13) || (key==27) ) return imposeMaxLength(myfield, myLength);

			// accepted characters
			else if ((("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.,\"!?$'&;@-_():/- ").indexOf(keychar) > -1)) return imposeMaxLength(myfield, myLength);

			else return false;
		}
	}

//	#######################################################################################################
//	Function: alphanumerictags(Object, Event, [bool impose], [maxLength])
//		Used to allow only specific Letters, Numbers, and Punctuation into a text form input field
//	Usage:
//		<textarea name="myName" onKeyPress="return alphanumeric(this, event);"></textarea>
//	Options:
//		if third parameter is 'true', imposeMaxLength is also evaluated, with maxlength of fourth parameter

	function alphanumerictags(myfield, e, impose, myLength)
	{
		var key;
		var keychar;

		if (window.event) key = window.event.keyCode;
		else if (e) key = e.which;
		else return true;

		keychar = String.fromCharCode(key);

		// If maxlength is not required
		if (impose != true) {

			// control keys
			if ((key==null) || (key==0) || (key==8) || (key==9) || (key==13) || (key==27) ) return true;

			// accepted characters
			else if ((("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.,\"!?$'&;@-_():/- #=<>").indexOf(keychar) > -1)) return true;

			else return false;
		}
		// If maxlength is required
		else {

			// control keys
			if ((key==null) || (key==0) || (key==8) || (key==9) || (key==13) || (key==27) ) return imposeMaxLength(myfield, myLength);

			// accepted characters
			else if ((("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.,\"!?$'&;@-_():/- #=<>").indexOf(keychar) > -1)) return imposeMaxLength(myfield, myLength);

			else return false;
		}
	}

//	#######################################################################################################
//	Function: alphanumsecure(Object, Event, [bool impose], [maxLength])
//		Used to allow only specific Letters, Numbers, and Punctuation into a text form input field
//	Usage:
//		<textarea name="myName" onKeyPress="return alphanumsecure(this, event);"></textarea>
//	Options:
//		if third parameter is 'true', imposeMaxLength is also evaluated, with maxlength of fourth parameter

	function alphanumsecure(myfield, e, impose, myLength)
	{
		var key;
		var keychar;

		if (window.event) key = window.event.keyCode;
		else if (e) key = e.which;
		else return true;

		keychar = String.fromCharCode(key);

		// If maxlength is not required
		if (impose != true) {

			// control keys
			if ((key==null) || (key==0) || (key==8) || (key==9) || (key==13) || (key==27) ) return true;

			// accepted characters
			else if ((("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.@-_ ").indexOf(keychar) > -1)) return true;

			else return false;
		}
		// If maxlength is required
		else {

			// control keys
			if ((key==null) || (key==0) || (key==8) || (key==9) || (key==13) || (key==27) ) return imposeMaxLength(myfield, myLength);

			// accepted characters
			else if ((("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.@-_ ").indexOf(keychar) > -1)) return imposeMaxLength(myfield, myLength);

			else return false;
		}
	}

//	#######################################################################################################
//	Function: numeric(Object, Event, [bool impose], [maxLength])
//		Used to allow only Numbers 0-9 into a text form input field
//	Usage:
//		<textarea name="myName" onKeyPress="return numeric(this, event);"></textarea>
//	Options:
//		if third parameter is 'true', imposeMaxLength is also evaluated, with maxlength of fourth parameter

	function numeric(myfield, e, impose, myLength)
	{
		var key;
		var keychar;

		if (window.event) key = window.event.keyCode;
		else if (e) key = e.which;
		else return true;

		keychar = String.fromCharCode(key);

		// If maxlength is not required
		if (impose != true) {

			// control keys
			if ((key==null) || (key==0) || (key==8) || (key==9) || (key==13) || (key==27) ) return true;

			// accepted characters
			else if ((("0123456789").indexOf(keychar) > -1)) return true;

			else return false;
		}
		// If maxlength is required
		else {

			// control keys
			if ((key==null) || (key==0) || (key==8) || (key==9) || (key==13) || (key==27) ) return imposeMaxLength(myfield, myLength);

			// accepted characters
			else if ((("0123456789").indexOf(keychar) > -1)) return imposeMaxLength(myfield, myLength);

			else return false;
		}
	}

//	#######################################################################################################
//	Function: numeric_curr(Object, Event, [bool impose], [maxLength])
//		Used to allow only Currency Formatting: 0-9, '.' into a text form input field
//	Usage:
//		<textarea name="myName" onKeyPress="return numeric_curr(this, event);"></textarea>
//	Options:
//		if third parameter is 'true', imposeMaxLength is also evaluated, with maxlength of fourth parameter

	function numericcurrency(myfield, e, impose, myLength)
	{
		var key;
		var keychar;

		if (window.event) key = window.event.keyCode;
		else if (e) key = e.which;
		else return true;

		keychar = String.fromCharCode(key);

		// If maxlength is not required
		if (impose != true) {

			// control keys
			if ((key==null) || (key==0) || (key==8) || (key==9) || (key==13) || (key==27) ) return true;

			// accepted characters
			else if ((("0123456789.").indexOf(keychar) > -1)) return true;

			else return false;
		}
		// If maxlength is required
		else {

			// control keys
			if ((key==null) || (key==0) || (key==8) || (key==9) || (key==13) || (key==27) ) return imposeMaxLength(myfield, myLength);

			// accepted characters
			else if ((("0123456789.").indexOf(keychar) > -1)) return imposeMaxLength(myfield, myLength);

			else return false;
		}
	}