$(function() {
    loadForm();
});

function loadForm() {
    $.get('/cgi-bin/contact.cgi', function(data) {
        $('#content').html(data);
        initForm();
    });
}

function initForm() {
    if ($('#contact').size() > 0) {
	var options = {
	    data: { key: '0ICB453sQqXodj2Y' },
	    success: processResponse
	};
	//$('#message').val('message')
	$('#contact').ajaxForm(options);
	
	$('#submit').one("click", (function() {
	    if ($('#message').val() == 'Message') {
		$('#message').val('');
	    }
	    
	    if (validateForm()) {
		$(this).val('sending');
		$('#contact').submit();
	    }
	    else {
		initForm();
	    }
	    return false;
	}));
	
	$('#submit').val('send it');
    }
}

function processResponse(data, status) {
    $('#content').html(data);
    initForm();
}

function validateForm() {
    var formReady = true;

    if ($('#name').val() == '') {
		$('#name').addClass('err');
		formReady = false;
    }
    if (!(validateEmail($('#email').val()))) {
		$('#email').addClass('err');
		formReady = false;
    }
    if ($('#message').val() == '') {
		$('#message').addClass('err');
		formReady = false;
    }

    return formReady;
}

function validateEmail(elementValue){  
    var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;  
    return emailPattern.test(elementValue);
}
