	//Popluate Form Fields	
		<!--
		function clearThis(formElement) {
			if (formElement.value == formElement.defaultValue) {
				formElement.value="";
			}
		}
		function fillThis(formElement) {
			if (formElement.value == "") {
				formElement.value= formElement.defaultValue;
			}
		}
	//-->

	//Validate Fields	
		var cleanValidator = {
		init: function (settings) {
		this.settings = settings;
		this.form = document.getElementById(this.settings["formId"]);
		formInputs = this.form.getElementsByTagName("input");
		
		// change color of inputs on focus
		for(i=0;i<formInputs.length;i++)
		{
			if(formInputs[i].getAttribute("type") != "submit") {
				input = formInputs[i];
				input.style.background = settings["inputColors"][0];
				input.onblur = function () {
					this.style.background = settings["inputColors"][0];
				}
				input.onfocus = function () {
					this.style.background = settings["inputColors"][1];
				}
			}
		};
		this.form.onsubmit = function () {
			error = cleanValidator.validate();
			if(error.length < 1) {
				return true;
			} else {
				cleanValidator.printError(error);
				return false;
			}
		};
	},
	validate: function () {
		error = '';
		validationTypes = new Array("isRequired", "isNumeric", "isEmail");
		for(n=0; n<validationTypes.length; n++) {
			var x = this.settings[validationTypes[n]];
			if(x != null) {
				for(i=0; i<x.length; i++) 
				{
					inputField = document.getElementById(x[i]);
					switch (validationTypes[n]) {
						case "isRequired" :
						valid = !isRequired(inputField.value);
						errorMsg = "is required.";
						break;
						case "isEmail" :
						valid = isEmail(inputField.value);
						errorMsg = "must be an address (Ex. email@address.com).";
						break;
						case "isNumeric" :
						valid = isNumeric(inputField.value);
						errorMsg = "must be a number  (Ex. 800-123-4567).";
						break;
					}
					if(!valid) {
						error += x[i]+" "+errorMsg+"\n";
						inputField.style.background = this.settings["errorColors"][0];
						inputField.style.border = "1px solid "+this.settings["errorColors"][1];
					} else {
						inputField.style.background = this.settings["inputColors"][0];
						inputField.style.border = '1px solid #ffffff';
					}
				}
			}
		}
		return error;
	},
	printError: function (error) {
		alert(error);
	}

	};

	// returns true if the string is not empty
	function isRequired(str){
		return (str == null) || (str.length == 0);
	}
	// returns true if the string is a valid email
	function isEmail(str){
		if(isRequired(str)) return false;
		var re = /^[^\s()<>@,;:\/]+@\w[\w\.-]+\.[a-z]{2,}$/i
		return re.test(str);
	}
	// returns true if the string only contains characters 0-9 and is not null
	function isNumeric(str){
		if(isRequired(str)) return false;
		//var re = /[^\d-]$/
		var re = /^[\d\-]{12}$/
		return re.test(str);
	}
	//-->

	//Prevent Enter key from sending the form
		function checkCR(evt) {
		var evt  = (evt) ? evt : ((event) ? event : null);
		var node = (evt.target) ? evt.target : ((evt.srcElement) ? evt.srcElement : null);

			if ((evt.keyCode == 13) && (node.type=="text")) {return false;}
		  }

		  document.onkeypress = checkCR;
	//-->
