(function($) {

	$.fn.initQuestionForm = function() {
		new $.askaquestion(this);
		return this;
	};
	
	$.askaquestion = function(form)
	{
		var output = $('#message_block_output');
		
		function validateFields()
		{
			//var fields = new Array('#name_field', '#email_field', '#question_field');
			var emailRegEx = /^[A-Z0-9._%-]+@[A-Z0-9._%-]+(\.([A-Z]{2,6})){1,2}$/i;
			var valid = true;
			
			form.find(':input').each(function(i){
				field = $('#' + this.id);
				
				if (!field.val()) {
					valid = false;
				} else if (field.attr('name') == 'email') {
					if (emailRegEx.test(field.val()) == false) {
						valid = false;
					}
				}
			});
			
			return valid;
		}
		
		form.submit(function(){
			output.text('Submitting Question...');
			output.removeClass('error');
			output.addClass('success');
			
			if (!validateFields(form)) {
				output.text("All fields are required. \nMake sure you use a valid email address.");
				output.removeClass('success');
				output.addClass('error');
				return false;
			}
			
			$.get('/lib/ajax/ask_a_question.php', {'name':$('#message_block_name').val(),'from':$('#message_block_email').val(),'question':$('#message_block_question').val()},function(data){completeDisplay(data)});
					
			return false;
		});
		
		function completeDisplay(data)
		{
			output.html(data);
			
			if (data.substr(0,4) == '<h4>') {
				output.removeClass('error').addClass('success');
				$('#message_block_name').val('');
				$('#message_block_email').val('');
				$('#message_block_question').val('');
			} else {
				output.removeClass('success').addClass('error');
			}
		}
	}
})(jQuery);