
/*************************************************
 File			: ContactForm.js
 Description: Javascript for the contact form
 Date			: 3/7/2008
 Project		: kajames.ca/kajames.com
 ================================================
 Updates:
*************************************************/

function ShowEmailForm() {
	if (document.getElementById('ContactForm')) document.getElementById('ContactForm').style.display = '';
	if (document.getElementById('ContactEmailLink')) document.getElementById('ContactEmailLink').style.display = 'none';
}
function HideEmailForm() {
	if (document.getElementById('ContactForm')) document.getElementById('ContactForm').style.display = 'none';
	if (document.getElementById('ContactEmailLink')) document.getElementById('ContactEmailLink').style.display = '';
}

function SetContactPhone() {
	if (document.getElementById('ContactPhone')) document.getElementById('ContactPhone').innerHTML = 'Ph' + 'one';
	if (document.getElementById('ContactPhone')) document.getElementById('ContactPhone').innerHTML += ': (647' + ') 340' + '-6610';
}

function EmailResult() {
	if (http_request.readyState == 4) {
      if (http_request.status == 200) {
         //alert(http_request.responseText);
         result = http_request.responseText;
         document.getElementById('EmailResult').innerHTML = result;
			document.getElementById('EmailResult').style.display = "";
			if (result=="Email Sent") {
				HideEmailForm();
				document.getElementById('ContactEmail').value = "Your Email";
				document.getElementById('ContactMsg').value = "Your message here";
			}
      } else {
			// Problem with the request, submit the form			
			document.getElementById('ContactForm').submit();
      }
   }
}

function ContactFormSubmit() {

	var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
	
	if ((!document.getElementById('ContactMsg')) || (!document.getElementById('ContactEmail'))) {
		alert("Invalid email form");
		return;
	} else if (!emailPattern.test(document.getElementById('ContactEmail').value)) {
		alert("You must enter a valid email address.");
		return;
	} else if ((document.getElementById('ContactMsg').value == "Your message here") || (document.getElementById('ContactMsg').value == "")) {
		alert("You must enter a message to send.");
		return;
	}
	
	http_request = null;
	getHttpRequest();
	
	if (http_request==null) {
		// No AJAX support
		document.getElementById('ContactForm').submit();
		return;
	}
	
	var url = document.getElementById('ContactForm').action;
	var parameters = "ContactEmail=" + encodeURIComponent(document.getElementById('ContactEmail').value) +
		"&ContactMsg=" + encodeURIComponent(document.getElementById('ContactMsg').value) + "&AJAX=true";
	
	http_request.onreadystatechange = EmailResult;
   http_request.open('POST', url, true);
   http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
   http_request.setRequestHeader("Content-length", parameters.length);
   http_request.setRequestHeader("Connection", "close");
   http_request.send(parameters);
}