$(function() {
	$("#contactbutton").click(function(e) {
		e.preventDefault();
		if (!$("#contactpanel").length) {
			$("<div/>", {id: 'contactpanel'}).load("contact #contactcontent", function() {
				$(this).css({left: '100%'}).appendTo("body").animate({left: '50%'});
				$("#name").focus();
				$("<a href=\"\" id=\"cancelbutton\" class=\"formbutton\">Cancel</a>")
				.appendTo("#contactform p:last").click(function(e) {
					e.preventDefault();
					$("#contactpanel").animate({left: '100%'}, function() {
						$(this).hide();
					});
				});
				$("#contactform").submit(function(e) {
					$("#name, #eaddr, #subject, #message").removeClass("missingrequired");
					if (!$("#name").val()) {
						$("#name").addClass("missingrequired")
						e.preventDefault();
					}
					var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
					if (!$("#eaddr").val() || reg.test($("#eaddr").val()) == false) {
						$("#eaddr").addClass("missingrequired")
						e.preventDefault();
					}
					if (!$("#subject").val()) {
						$("#subject").addClass("missingrequired")
						e.preventDefault();
					}
					if (!$("#message").val()) {
						$("#message").addClass("missingrequired")
						e.preventDefault();
					}
				});
				$("#name, #eaddr, #subject, #message").change(function() {
					if ($(this).val()) {
						$(this).removeClass("missingrequired");
					}
				});
			});
		} else {
			$("#contactpanel").show().animate({left: '50%'});
			$("#name").focus();
		}
	});
	$("#closebutton").click(function(e) {
		e.preventDefault();
		$("#contactpanel").animate({left: '100%'}, function() {
			$(this).remove();
		});
	});
});
