// Vkernel Mootools Scripts

var vkernel	= function() {
	
	var fnLoadCookies = function() {
	
		var raw = Cookie.read("autofill");
		var rawObj = JSON.decode(raw);
		if(rawObj)
		{
			var FirstName = 	$(document.body).getElement('input[name=FirstName]');
			var LastName = 		$(document.body).getElement('input[name=LastName]');
			var Email = 		$(document.body).getElement('input[name=Email]');
			var Company = 		$(document.body).getElement('input[name=Company]');
			var Phone = 		$(document.body).getElement('input[name=Phone]');
			var State = 		$(document.body).getElement('select[name=State]');
			var Country = 		$(document.body).getElement('select[name=Country]');
			
			if(FirstName)	{ FirstName.value 	= decodeString(rawObj.FirstName); }
			if(LastName) 	{ LastName.value 	= decodeString(rawObj.LastName); }
			if(Email) 		{ Email.value 		= decodeString(rawObj.Email); }
			if(Company) 	{ Company.value 	= decodeString(rawObj.Company); }
			if(Phone) 		{ Phone.value 		= decodeString(rawObj.Phone); }
			if(State) 		{ State.value		= decodeString(rawObj.State); }
			if(Country) 	{ Country.value 	= decodeString(rawObj.Country); }
		}
	
	}
	
	var decodeString = function(psEncodeString) {
		// Create a regular expression to search all +s in the string
  		var lsRegExp = /\+/g;
 		// Return the decoded string
  		return unescape(String(psEncodeString).replace(lsRegExp, " "));
	}
	
	var addLoadEvent = function(func) {
		var oldonload = window.onload;
		if (typeof window.onload != 'function') {
			window.onload = func;
		} else {
			window.onload = function() {
				if (oldonload) {
					oldonload();
				}
				func();
			};
		}
	};
	
	return {
		init: function() { 
			addLoadEvent(fnLoadCookies);
		},		
		run: function() {
			fnLoadCookies();
		}
	};
}();

vkernel.init();

function formSubmit(elt) {
  var result =  Mkto.formSubmit(elt);
  if (result) {
  	var formJSON = JSON.encode({LastName: $('LastName').value, FirstName: $('FirstName').value, Phone: $('Phone').value, Company: $('Company').value, Email: $('Email').value, Country: $('Country').value, State: $('State').value});
	var myCookie  = Cookie.write('autofill', formJSON, {duration: 30});
  }
  return result;
}

function fieldValidate(field) {
  return true;
}
function getRequiredFieldMessage(domElement, label) {
  return "This field is required";
}
function getTelephoneInvalidMessage(domElement, label) {
  return "Please enter a valid telephone number";
}
function getEmailInvalidMessage(domElement, label) {
  return "Please enter a valid email address";
}
