function submitform(){
	var valid = true;
	var iVal = new String();
	var element;
	clearWhiteSpace();
	$(" label.missing").removeClass('alert').addClass('required');
	$(":text textarea").css("border-color", 'grey');
	$('label.required').each(
		function () {			
			iVal = $("#" + $(this).attr('for')).val().trim();
			element = "#" + $(this).attr('for');
			switch($(this).attr('for')){
				case "email":
					if(! validEmail(iVal)){
						valid = false;
						$(this).removeClass('required').addClass('alert');
						$(element).css("border-color", '#DC143C');
					}
					break;
				case "phone":
					if(! validPhone(iVal)){
						valid = false;
						$(this).removeClass('required').addClass('alert');
						$(element).css("border-color", '#DC143C');
					}
					break;
				default:
					if(iVal.length == 0 || iVal == 0){
						valid = false;
						$(this).removeClass('required').addClass('alert');
						if ( $(element).attr('tagName').toLowerCase() == 'input' || $(element).attr('tagName').toLowerCase() == 'textarea' ){
							$(element).css("border-color", '#DC143C');
						}
					}
					break;
			}
		}
	);
	if(valid){
		openIndicator();
		xajax_submit(xajax.getFormValues("submit_form"));
	}else{
		alert("Missing Required Information.\nPlease see marked areas.");
	}
	return false;
}

function validPhone(phone){
	var p_pattern = /^(\(\d{3}\)|\d{3})(\.{0,1}|-{0,1}|\s{0,1})(\d{3})(\.{0,1}|-{0,1}|\s{0,1})(\d{4})$/;
	//var p_pattern = /^(\(\d{3}\)|\d{3})(-{0,1}|\s{0,1})(\d{3})(-{0,1}|\s{0,1})(\d{4})$/;
	return phone.match(p_pattern);
}

function validEmail(email){
    var tValid = false;
    if((email.length >= 6) && (email.match(/\b(^(\S+@).+((\.com)|(\.net)|(\.edu)|(\.mil)|(\.gov)|(\.org)|(\..{2,2}))$)\b/gi))){
        tValid = true;
    }
    return tValid;
}

function clearWhiteSpace(){
	var txt, i;
	txt = document.getElementsByTagName('input');
	for(i=0; i<txt.length; i++){
		if(txt[i].type == 'text' && txt[i].value.match(/^\s*$/)){
			txt[i].value = '';
		}
	}
}

function isNumberKey(evt){
    var charCode = (evt.which) ? evt.which : evt.keyCode;
    if (charCode > 31 && (charCode < 48 || charCode > 57)){
        if(charCode == 32 || (charCode >= 44 && charCode <= 46)){
            return true;
        }
        else{
            return false;
        }
    }
    return true;
}

function openIndicator(){
	$.blockUI.defaults.css.width = "380px";
	$.blockUI.defaults.css.height = "120px";
	$.blockUI({ message: $('#indicator') });
	//setTimeout("$.unblockUI()", 5000);
}

function closeIndicator(){
	setTimeout("$.unblockUI()", 2000);
}

String.prototype.trim = function () {
    return this.replace(/^\s*/, "").replace(/\s*$/, "");
}

String.prototype.capitalize = function(){
   return this.replace( /(^|\s)([a-z])/g , function(m,p1,p2){ return p1+p2.toUpperCase(); } );
};
