
//wait for the DOM to be loaded
jQuery( document ).ready( function() {
								   
	//HOME FORM
	homeForm.init();
	
	$("#date").datepicker({ dateFormat: 'DD, d MM, yy', showOn: 'both', buttonImage: 'images/calendar.gif', buttonImageOnly: true });
	
	//QUICK QUOTE
	// validate the Quick quote form when it is submitted
	$( "#quickQuoteForm" ).validate( {
		rules: {
			movingType: "required",
			movingFrom: "required",
			movingTo: "required",
			date: "required",
			time: "required",
			name: "required",
			email: { required: true, email: true },
			confirmEmail: {	required: true, email: true, equalTo: "#email" }
			
		/*	//home_Bedrooms: { required: { depends: function(element){ return jQuery( '#movingType' ).val() == "movingHouse"; } } }
			//office_People: { required: { depends: function(element){ return jQuery( '#movingType' ).val() == "movingOffice"; } } }
			*/
		}
		,
		messages: {
			movingType: "Please include your type of move.",
			movingFrom: "Please include your starting suburb.",
			movingTo: "Please include your destination suburb.",
			date: "Please include the date.",
			time: "Please include the time of day.",
			name: "Please include your name.",
			email: "Please include a valid email address.",
			confirmEmail: "Please confirm your email address."
			
			//home_Bedrooms: "Please confirm how many bedrooms to be moved."
		}
	} );
	
	
	
	//MOVING HOME CALCULATOR
	// validate the Moving home calculator form when it is submitted
	$( "#movingHomeCalculator" ).validate( {
		rules: {
			movingFrom: "required",
			movingTo: "required",
			date: "required",
			time: "required",
			name: "required",
			email: { required: true, email: true },
			confirmEmail: {	required: true, email: true, equalTo: "#email" }
		}
		,
		messages: {
			movingFrom: "Please include your starting suburb.",
			movingTo: "Please include your destination suburb.",
			date: "Please include the date.",
			time: "Please include the time of day.",
			name: "Please include your name.",
			email: "Please include a valid email address.",
			confirmEmail: "Please confirm your email address."
		}
	} );
	
	
	//MOVING OFFICE CALCULATOR
	// validate the Moving office calculator form when it is submitted
	$( "#movingOfficeCalculator" ).validate( {
		rules: {
			movingFrom: "required",
			movingTo: "required",
			date: "required",
			time: "required",
			name: "required",
			email: { required: true, email: true },
			confirmEmail: {	required: true, email: true, equalTo: "#email" }
		}
		,
		messages: {
			movingFrom: "Please include your starting suburb.",
			movingTo: "Please include your destination suburb.",
			date: "Please include the date.",
			time: "Please include the time of day.",
			name: "Please include your name.",
			email: "Please include a valid email address.",
			confirmEmail: "Please confirm your email address."
		}
	} );
	
	
	//CONTACT FORM
	// validate the contact form when it is submitted
	$( "#contactForm" ).validate( {
		rules: {
			firstName: "required",
			lastName: "required",
			email: { required: true, email: true },
			confirmEmail: {	required: true, email: true, equalTo: "#email" },
			message: "required"
		}
		,
		messages: {
			firstName: "Please include your first name.",
			lastName: "Please include your last name.",
			email: "Please include a valid email address.",
			confirmEmail: "Please confirm your email address.",
			message: "Please include your message."
		}
	} );
	
} );

//$.validator.setDefaults({
	//submitHandler: function() { alert("submitted!"); }
//});

//handles setting up home form
homeForm =
{
	init : function()
	{
		if( jQuery( '#movingType' ).size() < 1 ){ return; };
		homeForm.setSection( jQuery( '#movingType' ).fieldValue() );
		jQuery( '#movingType' ).change( function(){ var myId = jQuery( this ).fieldValue(); homeForm.setSection( myId ); } );
	}//end function init
	,
	setSection : function( pmId )
	{
		var myId = pmId;
		homeForm.hideAllSections();
		homeForm.showSection( 'type' );
		homeForm.showSection( 'logistics' );
		homeForm.showSection( 'userDetails' );
		homeForm.showSection( myId );
	}//end function setSection
	,
	getSectionList : function()
	{
		var myList = new Array( 'type', 'logistics', 'movingHouse', 'movingOffice', 'movingFewItems', 'movingSingleItem', 'userDetails' );
		return( myList );
	}
	,
	hideSection : function( pmId )
	{
		var myId = pmId;
		jQuery( '#' + myId ).css( 'display', 'none' );
	}
	,
	showSection : function( pmId )
	{
		var myId = pmId;
		jQuery( '#' + myId ).css( 'display', 'block' );
	}
	,
	hideAllSections : function()
	{
		var mySectionList = homeForm.getSectionList();
		for( var i = 0; i < mySectionList.length; i++ )
		{
			homeForm.hideSection( mySectionList[ i ] );
		};//end for
	}//end function hideAllSections
};//end object literal homeForm