	// Contact form functionality
	
	var sendingMsg = false;
	function clearContactStatus() {
		$("#formstatus").fadeOut("def", function() {$("#formstatus").html("&nbsp;");});
	}
	 $(document).ready(function(){
		function validateEmail(str){
			var emailRegEx = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
			return str.match(emailRegEx);
		}
		var subTimeout;

		//Bind function to click event of contact types
		$("div.contacttype").click(function() {
			$("div.contacttype").addClass("product_sidebar").removeClass("product_sidebar_selected");
			$(this).addClass("product_sidebar_selected").removeClass("product_sidebar");
			$("#contactype").val($("div.contacttype").index(this));
		});

		//get anchor if available and apply click to appropriate element
		var id = parseInt(window.location.search.substring(1));
		if(!isNaN(id)) 
			$($("div.contacttype")[id]).click();
		
		$("#sendmessage").click(function() {
			if(sendingMsg)
				return false;
			clearTimeout(subTimeout);
			//validate data before passing
			if($("#name").val().length == 0) {
				$("#formstatus").hide().html("Please enter your name.").fadeIn();
				$("#name").focus();
				subTimeout = setTimeout(clearContactStatus, 2000);
				return false;
			}
			if(!validateEmail($("#email").val())) {
				$("#formstatus").hide().html("Invalid Email Address.").fadeIn();
				$("#email").focus();
				subTimeout = setTimeout(clearContactStatus, 2000);
				return false;
			}
			if($("#message").val().length == 0) {
				$("#formstatus").hide().html("Please enter a message.").fadeIn();
				$("#message").focus();
				subTimeout = setTimeout(clearContactStatus, 2000);
				return false;
			}
			
			//data validated - submit form
				
			$("#formstatus").hide().html("Sending Message...").fadeIn();
			sendingMsg = true;
			var formdata = $("form#contactform").serialize();
			$.post('contactrequest.php', '&'+formdata, function(data) {
				$("#formstatus").fadeOut("fast", 
					function() {
						$("#formstatus").html(data).fadeIn("fast");
						subTimeout = setTimeout("clearContactStatus(); $('form#contactform')[0].reset();sendingMsg=false;", 4000);
					});
				});
			
			return false;
			});
	 });	