Event.observe(window, 'load', function() {
	var contact = $$('form[name="contact"]')[0];
	Event.observe(contact, 'submit', function(e) {
		var loader = new Loading(PATH_IMG_LOADING);
		var form = e.element();
		
		var from_elem = form.getInputs('text', 'sender')[0];
		if (!validateEmail(from_elem.value)) {
			alert(wording.message.error.mailbadformat);
			return;
		}
		
		loader.montre();
		
		form.request({
			onSuccess: function(transport) {
				loader.hide();
				var json = transport.responseText.evalJSON();
				if (typeof(json.message) != 'undefined') {
					alert(json.message);
				}
				
				if (json.ok) {
					form.reset();
				}
			},
			onFailure: function() {
				alert(wording.message.ajax.failure);
			}
		});
	});
});

var validateEmail = function(value) {
	var regex = /^((\"[^\"\f\n\r\t\v\b]+\")|([\w\!\#\$\%\&'\*\+\-\~\/\^\`\|\{\}]+(\.[\w\!\#\$\%\&'\*\+\-\~\/\^\`\|\{\}]+)*))@((\[(((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9])))\])|(((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9])))|((([A-Za-z0-9\-])+\.)+[A-Za-z\-]+))$/;
	if (value != '' && !regex.test(value)) {
		return false;
	}
	
	return true;
}