
//wait for the DOM to be loaded
jQuery( document ).ready( function() {
		
	Forms.init();
	
} );

Forms =
{
	init : function()
	{
		jQuery.validator.setDefaults({
			//submitHandler: function() { alert("submitted!"); }
		});
		
		//Set forms.
		Forms.setContactForm();
		Forms.setHeaderLoginForm();
		Forms.setLoginForm();
	}
	,
	setContactForm : function()
	{
		//Contact form.
		
		var myFormId = "form#contactForm";
		
		//Reset form buttons
		$( myFormId + ' button.submitBtn' ).attr('disabled', '').removeClass( 'disabled' );
		$( myFormId + ' button.resetBtn' ).attr('disabled', '').removeClass( 'disabled' );
		
		//Setup validation.
		jQuery( myFormId ).validate( {
			rules: {
				name: "required",
				email: { required: true, email: true },
				emailConfirm: {	required: true, email: true, equalTo: "#email" },
				message: "required"
			}
			,
			messages: {
				name: "Please enter your name.",
				email: "Please enter a valid email address.",
				emailConfirm: { required: "Please confirm your email address.", email: "Please insure the email is in a valid format.", equalTo: "Please insure that your email is correct and matches in both fields." },
				message: "Please enter your message."
			}
			,
			submitHandler: function( pmForm ) {
				//Disable and style form buttons.
				$( myFormId + ' button.submitBtn' ).attr('disabled', 'disabled').addClass( 'disabled' );
				$( myFormId + ' button.resetBtn' ).attr('disabled', 'disabled').addClass( 'disabled' );
				
				//Send form action.
				pmForm.submit();
			}
		} );
	}//end setContactForm
	,
	setLoginForm : function()
	{

		var myFormId = "form#loginForm";
		
		//Reset form buttons
		$( myFormId + ' button.submitBtn' ).attr('disabled', '').removeClass( 'disabled' );
		
		//Setup validation.
		jQuery( myFormId ).validate( {
			rules: {
				username: "required",
				password: "required"
			}
			,
			messages: {
				username: "We need your username to log you in",
				password: "We need your password to log you in"
			}
			,
			submitHandler: function( pmForm ) {
				//Disable and style form buttons.
				$( myFormId + ' button.submitBtn' ).attr('disabled', 'disabled').addClass( 'disabled' );
				
				//Send form action.
				//pmForm.submit();
			}
		} );
	}//end setLoginForm
	,
	setHeaderLoginForm : function()
	{

		var myFormId = "form#headerLoginForm";
		
		//Reset form buttons
		$( myFormId + ' button.submitBtn' ).attr('disabled', '').removeClass( 'disabled' );
		
		//Setup validation.
		jQuery( myFormId ).validate( {
			rules: {
				username: "required",
				password: "required"
			}
			,
			messages: {
				username: "*required",
				password: "*required"
			}
			,
			submitHandler: function( pmForm ) {
				//Disable and style form buttons.
				$( myFormId + ' button.submitBtn' ).attr('disabled', 'disabled').addClass( 'disabled' );
				
				//Send form action.
				pmForm.submit();
			}
		} );
	}//end setHeaderLoginForm
	
}//end Forms
