/*   
=============================================================================== 
Base jQuery file
...............................................................................
                                                                        2009/08
------------------------------------------------------------------------------- 
COPY / USE AT YOUR OWN SITE'S RISK
=============================================================================== 
*/
$.fn.addCurrentSec = function() {
	var href = "/"+$(this).attr("rel")+"/";
	var path = $.url.attr("directory");
	if ( (href == path) ) {
		$(this).parents("li").addClass("current");
	}
}
$.fn.addCurrentPg = function() {
	var href = $(this).attr("href");
	var path = $.url.attr("file");
	if ( href == path ) {
		$(this).parents("li").addClass("current");
	} else if ( !path ) {
		var path = ".." + $.url.attr("directory");
		if ( href == path ) {
			$(this).parents("li").addClass("current");
		}
	}
}
$(document).ready( function() {
	$(".viewoption a").click( function() {
		var relContent = $(this).parents("li").attr("id");
		$(this)
			.parents("li").addClass("current")
			.siblings(".current").removeClass("current");
		$("#toggleview div.current").removeClass("current").toggle();
		$("#toggleview div."+relContent).addClass("current").toggle();
	});
	// Add .current, where applicable
	$("#aside a").each( function() {
		$(this).addCurrentSec();
	});
	$("#section_nav a").each( function() {
		$(this).addCurrentPg();
	});
	
	// add first and last classes to various elements
	$("#footer ul, #section_nav").each( function() {
		$(this).children("li:last").addClass("last");
		$(this).children("li:first").addClass("first");
	});
	
	if ( $("#content.homefade").length > 0 ) {
		$('#content.homefade').innerfade({
			speed: 4000, // transition speed
			timeout: 8000, // time each div is displayed
			type: 'sequence',
			containerheight: '496px'
		})
	};
	// form validation
	if ( $("#form_contact").length > 0 ) {
	    $("#form_contact").validate({
			rules: {
				contact_firstname: "required",
				contact_lastname: "required",
				contact_zip: "required",
				contact_email: {
					required: true,
					email: true
				}
			},
			messages: {
				contact_firstname: "Please enter your first name",
				contact_lastname: "Please enter your last name",
				contact_zip: "Please enter your zip code",
				contact_email:  {
					required: "Please enter your email address",
					email: "Please enter a valid email address"
				}
			}
		})
	};
});