(function(app, $, undefined) {
					
	var self = app.callbackForm = {};
	
	self.container = '';
	self.form = '#callback_form';
	self.errors = [];
	
	self.init = function(selector)
	{
		self.container = selector;
		$(self.container).load('includes/callback_form.php', self.setupHooks);
	}
	
	self.setupHooks = function()
	{
		$(self.form).submit(function(e) {
			e.preventDefault();
			self.validate();
			if (self.errors.length > 0) alert(self.errors[0]);
			else {
				var formData = $(this).serialize();
				$.post('includes/callback_form.php', formData, self.showResult);
			}
		});
	}
	
	self.validate = function()
	{
		self.errors = [];
		if ($(self.form + " input[name='name']").val().length < 2) self.errors.push('Name is required');
		if ($(self.form + " textarea[name='message']").val().length < 2) self.errors.push('Message is required');
	}
	
	self.showResult = function(data, textStatus)
	{
		if (data == 'OK') {
			$(self.container).html('<strong>Thank you. Your message has been sent.</strong>');
		} else {
			alert('There seems to be a problem sending your message. Please try again later.');
		}
	}
					
}(window.wsvApp = window.wsvApp || {}, jQuery));
