
// for site specific functions. either grab js from code-library.js or write your own.

$(document).ready( function() {
	$("body").addClass('js');
	
	Cufon.replace('h1', { fontFamily: 'HelveticaNeueLtStdCn' });
	Cufon.replace('#focusAreas h2', { fontFamily: 'HelveticaNeueLtStdMedCn' });
	
	
	anchors.addBehaviors();
	forms.events();
	faqs.init();
});


/* =================================================================== */
var forms = {
	events : function() {
		var fields = $('form div').find('input').add('textarea')
			.focus( function() {
				$(this).closest('div').addClass('selected');
			}).blur( function() {
				$(this).closest('div').removeClass('selected');
			}
		);
	}
}
/* =================================================================== */



/* =================================================================== */
var faqs = {
	listID : 	'q-n-a',
	
	init : function() {
		var $list = $('#'+faqs.listID);
		$list.find('.a').hide();
		$list.find('.q').each( function() {
			$(this).wrapInner('<a href="#'+$(this).closest('li').attr('id')+'"></a>').click( function(e) {
				//e.preventDefault();
				faqs.showHide(this);
			});
		});

		// should one be open? 
		var selected = getHash();
		if (selected) {
			var top = $('#' + selected).offset().top;
			self.scrollTo(0, top);
			var obj = $('#' + selected).find('.q');
			faqs.showHide(obj);
		}
	},
	showHide : function(obj, $list) {
		$list = $('#'+faqs.listID);
		$list.find('.a:visible').not($(obj).next('.a')).hide();
		$(obj).next('.a').toggle();
		if ($(obj).next('.a').is(':visible')) {
			$(obj).addClass('open');
		} else {
			$(obj).removeClass('open');
		}
	}
}	
/* =================================================================== */




/* =================================================================== */

function getHash() {
	var hash = window.location.hash;
	if (hash != 0) {
		return hash.substring(1); // remove #
	} else {
		return null;
	}
}




/* =================================================================== */


/* =================================================================== */
// various link functionality - popups, external, onstate
// original script taken from Jeremy Keith
// dependencies: jQuery
var anchors = {
	a: Object,
	addBehaviors : function() {
		$('a').each( function() {
			var $a = $(this);
			// external links
			if ( ($a.attr('rel')=="external") || $a.hasClass('external') || $a.hasClass('pdf') || $a.hasClass('popupFull') ) {
				$a.click( function(e) {
					e.preventDefault();
					return anchors.openWin(this,"");
				});
			}
			// popup
			if ( $a.hasClass('popup') ) {
				$a.click( function() {
					return anchors.openWin(this,"height=550,width=600,scrollbars=yes");
				});
			}
			// onstate
			if ( $a.attr('href') == location.href ) {
				$a.addClass('onstate');
			}
		});
	},
	openWin : function(o,params) {
		window.open(o.href, "newwin","" + params + "");
		return false;
	}
};
/* =================================================================== */