/*   
=============================================================================== 
Base jQuery file
...............................................................................
                                                                        2009/06
------------------------------------------------------------------------------- 
COPY / USE AT YOUR OWN SITE'S RISK
=============================================================================== 
*/
$(document).ready( function() {
	if ($.browser.msie) {
		$("#footer li.clear_right").after("<br />");
	};
	// add first and last classes to various elements
	$("#nav_primary, #footer ul").each( function() {
		$(this).children("li:last").addClass("last");
		$(this).children("li:first").addClass("first");
	});
	// alternating rows
	$("table tbody").each( function() {
		$(this).children("tr:odd").addClass("odd");
	});
	$("table.idh tr:first").addClass("border_top");
	$("table.idh tr.sold td.thumb img").wrap(document.createElement("div")).after('<div class="soldbanner">Sold</div>');
	// vertical spacing for tall[er] linkboxes	
	if ( $(".linkbox").length > 0 ) {
		if ( $(".linkbox:has(img)").children("img").height() > 40 ) $(".linkbox:has(img)").addClass("hasimg");
	};
	// Homepage close/open buttons
	$("a.btn.close, a.btn.open").click(
		function() {
			$("#rotator .callout, #form_search").toggle();
			$(this).hide().siblings(".btn").show();
		}
	);
	// community dropdown menu
	if ( $("#nav_community").length > 0 ) {
		$("#nav_community h3").click(function () {
			$("#nav_community ul").slideToggle("medium");
		})
	};
	// add orange arrows to various links
	$("a.calltoaction, a.arrow, #nav_home a").append('&nbsp;<span class="orange">&#9658;</span>');
		$(".linkbox").each( function() {
			$(this).children("a:first").append('&nbsp;<span class="orange">&#9658;</span>');
		});
		$(".linkbox a:has(img)").addClass("noarrow");
	// step processes - horizontally scrolling window
	if ( $(".scrollable").length > 0 ) {
	    $(".scrollable").scrollable({ 
	        size: 1, 
	        items: '#scroll_progression',   
	        hoverClass: 'hover' 
	    })
	};
	// form validation
	if ( $("#form_resume").length > 0 ) {
		$("#form_resume").validate({
			rules: {
				resume_firstname: "required",
				resume_lastname: "required",
				resume_email: {
					required: true,
					email: true
				}
			},
			messages: {
				resume_firstname: "Please enter your first name",
				resume_lastname: "Please enter your last name",
				resume_email:  {
					required: "Please enter your email address",
					email: "Please enter a valid email address"
				}
			}
		})
	};
	if ( $("#form_contact").length > 0 ) {
		$("#form_contact").validate({
			rules: {
				contact_firstname: "required",
				contact_lastname: "required",
				contact_email: {
					required: true,
					email: true
				}
			},
			messages: {
				contact_firstname: "Please enter your first name",
				contact_lastname: "Please enter your last name",
				contact_email:  {
					required: "Please enter your email address",
					email: "Please enter a valid email address"
				}
			}
		})
	};
	if ( $("#form_osc").length > 0 ) {
		$("#form_osc").validate({
			rules: {
				osc_firstname: "required",
				osc_lastname: "required",
				osc_email: {
					required: true,
					email: true
				}
			},
			messages: {
				osc_firstname: "Please enter your first name",
				osc_lastname: "Please enter your last name",
				osc_email:  {
					required: "Please enter your email address",
					email: "Please enter a valid email address"
				}
			}
		})
	};
	// hidden fields
	$("input[type=hidden]").hide();
});