/**
 * matches US phone number format 
 * 
 * where the area code may not start with 1 and the prefix may not start with 1 
 * allows '-' or ' ' as a separator and allows parens around area code 
 * some people may want to put a '1' in front of their number 
 * 
 * 1(212)-999-2345
 * or
 * 212 999 2344
 * or
 * 212-999-0983
 * 
 * but not
 * 111-123-5434
 * and not
 * 212 123 4567
 */
jQuery.validator.addMethod("phoneUS", function(phone_number, element) {
    phone_number = phone_number.replace(/\s+/g, ""); 
	return this.optional(element) || phone_number.length > 9 &&
		phone_number.match(/^(1-?)?(\([2-9]\d{2}\)|[2-9]\d{2})-?[2-9]\d{2}-?\d{4}$/);
}, "Please specify a valid phone number");



$(function(){
	/*var navItems = $('#nav li');
	if (navItems[0]) {
		navItems.hover(
			function(){
				$(this).addClass('sfhover');
			},
			function(){
				$(this).removeClass('sfhover');
			}
		);
	}*/
	jQuery.easing.def = "easeOutQuad";
	$("#get-info-now-tab a").click(function(){
			//var sectionY=parseInt($("#get-info-now-section").css('top'));
		//	if (sectionY<0){
				$("#get-info-now-section").animate({top:0},600);
		//	} else {
		//		$("#get-info-now-section").animate({top:-417},600);
		//	}
	});
	$("#get-info-now-close").click(function(){
			$("#get-info-now-section").animate({top:-447},600);
		//	$("#get-info-now-section").css("display","none");
	});
	
	var formContact = jQuery("#formContact");
    if (formContact[0]) {
	    formContact.validate({
			rules: {
				firstname: "required",
				lastname: "required",
				/*phoneUS: {
					required: true,
					phoneUS: true
				},*/
				email: {
					required: true,
					email: true
				}
			},
			messages: {
				firstname: "Please enter your first name",
				lastname: "Please enter your last name",
				/*phoneUS: {
					required: "Please enter your phone number",
					phoneUS: "Please enter a valid phone number"
				},*/
				email:  {
					required: "Please enter your email address",
					email: "Please enter a valid email address"
				}
			},
			errorPlacement: function(error, element) { 
				if ( element.is(":radio") || element.is(":checkbox") ) 
					error.appendTo( element.closest('fieldset') );
				else 
					error.appendTo( element.parent() ); 
			}
		});
	}
	
	var formRealtor = jQuery("#formRealtor");
    if (formRealtor[0]) {
	    formRealtor.validate({
			rules: {
				firstname: "required",
				lastname: "required",
				//phoneUS: {
				//	required: true,
				//	phoneUS: true
				//},
				email: {
					required: true,
					email: true
				}
			},
			messages: {
				firstname: "Please enter your first name",
				lastname: "Please enter your last name",
				/*phoneUS: {
					required: "Please enter your phone number",
					phoneUS: "Please enter a valid phone number"
				},*/
				email:  {
					required: "Please enter your email address",
					email: "Please enter a valid email address"
				}
			},
			errorPlacement: function(error, element) { 
				if ( element.is(":radio") || element.is(":checkbox") ) 
					error.appendTo( element.closest('fieldset') );
				else 
					error.appendTo( element.parent() ); 
			}
		});
	}
	
	var formRefer = jQuery("#formRefer");
    if (formRefer[0]) {
	    formRefer.validate({
			rules: {
				firstname: "required",
				lastname: "required",
				/*phoneUS: {
					required: true,
					phoneUS: true
				},*/
				email: {
					required: true,
					email: true
				},
				yfirstname: "required",
				ylastname: "required",
				yemail: {
					required: true,
					email: true
				}
			},
			messages: {
				firstname: "Please enter your friend&rsquo;s first name",
				lastname: "Please enter your friend&rsquo;s last name",
				/*phoneUS: {
					required: "Please enter your friend&rsquo;s phone number",
					phoneUS: "Please enter a valid phone number"
				},*/
				email:  {
					required: "Please enter your friend&rsquo;s email address",
					email: "Please enter a valid email address"
				},
				yfirstname: "Please enter your first name",
				ylastname: "Please enter your last name",
				yemail:  {
					required: "Please enter your email address",
					email: "Please enter a valid email address"
				}
			},
			errorPlacement: function(error, element) { 
				if ( element.is(":radio") || element.is(":checkbox") ) 
					error.appendTo( element.closest('fieldset') );
				else 
					error.appendTo( element.parent() ); 
			}
		});
	}
	
});
