$(document).ready(function() {
	$('#slideshow').cycle({
		fx: 'fade', // choose your transition type, ex: fade, scrollUp, shuffle, etc...
		height: 200,
		speed: 2000,
		timeout: 8000
	});
	$('.detailPracticeArea').hide();
	$('.buttonExpand').addClass('buttonPlus');
	$('.buttonExpand').click(function(event) {
		var id = $(this).attr('rel');
		$('#d_'+id).slideToggle('slow');
		$('#pm_'+id).toggleClass('buttonMinus','buttonPlus');
		$(this).blur();
		event.preventDefault();
	});
	$('.inputText').bind({
		focus: function() {
			$(this).addClass('inputTextFocus');
		},
		blur: function() {
			$(this).removeClass('inputTextFocus');
			$(this).removeClass('inputMissing');
		}
	 });
	if ($('#contactForm').length != 0) {
		$('<div id="contactMsg">&nbsp;</div>').insertBefore('#contactSubmitButton');
		$('#contactMsg').hide();
		$('#contactResetButton').click(function() {
			$('#contactMsg').slideUp();
			$(this).blur();
		});
		$('#contactSubmitButton').click(function() {
			if (checkContactForm()) {
				sendContactForm();
			}
			$(this).blur();
			return false;
		});
	}
});

function checkContactForm() {
	$('#contactMsg').hide();
	var that = document.contactForm;
	var errmsg = '';
	if (that.name.value.length < 1) {
		errmsg += '&middot; Your Name cannot be blank<br />\n';
		$('#name').addClass('inputMissing');
	}
	if (that.email.value.length < 1) {
		errmsg += '&middot; E-mail cannot be blank<br />\n';
		$('#email').addClass('inputMissing');
	} else {
		if (!validateEmail(that.email.value)) {
			errmsg += '&middot; E-mail address is invalid<br />\n';
			$('#email').addClass('inputMissing');
		}
	}
	if (that.comments) {
		if (that.comments.value.length < 1) {
			errmsg += '&middot; Comments cannot be blank<br />\n';
			$('#comments').addClass('inputMissing');
		}
	}
	if (errmsg.length > 1) {
		errmsg = '<b>Please fix the following errors:</b><br />\n'+errmsg;
		showContactFormError(errmsg);
		return false;
	} else {
		return true
	}
}

function showContactFormError(errmsg) {
	$('#contactMsg').hide();
	$('#contactMsg').removeClass('contactTextMsg').addClass('contactErrorMsg');
	$('#contactMsg').html(errmsg);
	$('#contactMsg').slideDown();
}

function showContactFormMsg(txt) {
	$('#contactMsg').hide();
	$('#contactMsg').removeClass('contactErrorMsg').addClass('contactTextMsg');
	$('#contactMsg').html(txt);
	$('#contactMsg').slideDown();
	$('#contactSubmitButton').attr('disabled',false);
	$('#contactResetButton').attr('disabled',false);
}

function showAjaxLoader() {
	$('#contactSubmitButton').attr('disabled',true);
	$('#contactResetButton').attr('disabled',true);
	$('#contactMsg').hide();
	$('#contactMsg').removeClass('contactErrorMsg contactTextMsg');
	$('#contactMsg').html('<div align="center"><img src="/dev/images/ajax-loader.gif" width="32" height="32" /></div>');
	$('#contactMsg').slideDown();
}

function validateEmail(e) {  
	var pattern = /^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/;
	return pattern.test(e); 
}

function sendContactForm() {
	var dataString = $('#contactForm').serialize();
	var sendURL = $('#contactForm').attr('action');
	dataString += '&ajax=1';
	$.ajax({
		type: "POST",
		url: sendURL,
		data: dataString,
		beforeSend: function() {
			showAjaxLoader();
		},
		success: function(msg){
			showContactFormMsg(msg);
		}
	});
	document.contactForm.reset();
}

