function isValidEmailAddress(emailAddress) 
{
		var pattern = new RegExp(/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i);
		return pattern.test(emailAddress);
}

$(function() {
  $(".formErrorText").hide();
  
  $("#contactSubmit").click(function() {
		// validate and process form
		// first hide any error messages
		$('.formErrorText').hide();
		
		var upperSpacer="";
		var lowerSpacer="<div class='messageSpacer'></div>";
		
		var title = $("select#ctitle").val();
		var firstName = $("input#firstName").val();
		var surname = $("input#surname").val();
		var email = $("input#email").val();
		
		var error = false;
		
		if (email == "" || !isValidEmailAddress(email)) 
		{
			$("p#email_error").show();
			$("input#email").focus();
			error = true;
		}
		
		
		var comments = $("textarea#comments").val();
		if (comments =="") 
		{
			$("p#comments_error").show();
			$("textarea#comments").focus();
			error = true;
		}
		
		if (error) {
			return false;
		}		

		var formData = 
		{
			title : title,
			firstName : firstName,
			surname : surname,
			email : email,
			comments : comments,
			type : 'Feedback'
		
		};
		
		$.ajax({
		  type: "POST",
		  url: "/consumer/contactus",
		  data: formData,
		  success: function() 
		  {
			$('#contact_form').html("<div id='message'></div>");
			$('#message').html(upperSpacer)
			.append("<h2>Contact Form Submitted</h2>")
			.append("<p class='correctText'>We will be in touch soon.</p>")
			.append(lowerSpacer);
			
		  },
		  error:function (xhr, ajaxOptions, thrownError)
		  {
			$('#contact_form').html("<div id='message'></div>");
			$('#message').html(upperSpacer)
				.append("<h2>Contact Form Failed</h2>")
				.append("<p class='formErrorText2'>Please try again later.</p>")
				.append(lowerSpacer);
				  
                    //alert(xhr.status);
					//alert(ajaxOptions);
                    //alert(thrownError);
          }      
     });
    return false;
	});
});