// strings
var nameError = "Please include your First Name.";
var emailError = "Please include your E-mail Address.";
var messageError = "Please include your Message.";
var linkError = "Incorrect URL format.";
var companyError = "Please include your Company.";

var phoneNumberError = "Please include your Phone Number.";

function checkFields()
{
	// cleanup errors text
	var _errors = 0;
	var _errorsText = '';
	var _fieldName = document.getElementById("field-name")
	var _fieldEmail = document.getElementById("field-email")
	var _fieldCompany = document.getElementById("field-company")
	var _fieldURL = document.getElementById("field-url")
	var _fieldMessage = document.getElementById("field-message")

	if(_fieldName && _fieldEmail && _fieldCompany && _fieldURL && _fieldMessage) {
		// name field
		if(!_fieldName.value.length) {
			_errorsText+=nameError+'\n';
			_errors++;
		}
		// email field
		if(!_fieldEmail.value.match(new RegExp('^\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*$'))) {
			_errorsText+=emailError+'\n';
			_errors++;
		}
		// message field
		if(!_fieldMessage.value.length) {
			_errorsText+=messageError+'\n';
			_errors++;
		}
		// URL field
		if(_fieldURL.value.length>0) {
			if(!_fieldURL.value.match(new RegExp('^(ht|f)tps?:\/\/[a-z0-9-\.]+\.[a-z]{2,4}\/?([^\s<>\#%"\,\{\}\\|\\\^\[\]`]+)?$'))) {
				_errorsText+=linkError+'\n';
				_errors++;
			}
		}

		// validation failed code
		if(_errors>0) {
			alert(_errorsText);
			return false;
		}
		// validation passed
		return true;
	}
	return false;
}

// check form values
function initForm() {
	// message status
	var _loc = window.location.toString();
	if(window.location && _loc.indexOf("#sent")!=-1) {alert("Message sent");}
	if(window.location && _loc.indexOf("#error")!=-1) {alert("There was an error.");}

	// attach validation code
	var _form = document.getElementById("info-form");
	var _submit = document.getElementById("info-form-submit");
	if(_form && _submit) {
		_submit.onclick = function (){
			if(!checkFields()) {
				return false;
			}
		}
	}
}

if (window.addEventListener) window.addEventListener("load", initForm, false);
else if (window.attachEvent) window.attachEvent("onload", initForm);