(function($) {
$(document).ready(function(){

	var $panels = $('#slider .scrollContainer > div,#slider .scrollContainer > div > div');
	var $container = $('#slider .scrollContainer');

	var horizontal = true;
	
	if (horizontal) {
		$panels.css({
			'float' : 'left',
			'position' : 'relative'
		});

		$container.css('width', $panels[0].offsetWidth * $panels.length);
	}

	//	set overflow to stop horizontal scrollbar
	var $scroll = $('#slider .scroll').css('overflow-x', 'hidden');

	//	remove 'selected' from all links in navigation
	function selectNav() {
		$('#slider .navigation a')
			.removeClass('selected');
		$(this)
			.addClass('selected');
	}

	//	on any navigation click
	$('#slider .navigation a').click(selectNav);
	
	//	updates panel when nav is clicked
	function trigger(data){
		var el = $('#slider .navigation').find('a[href$="' + data.id + '"]').get(0);
		selectNav.call(el);
	}

	//	if we're selecting a panel go there, otherwise load the first slider page
	if (window.location.hash) {
		trigger({id:window.location.hash.substr(1)});
	} else {
		$('ul.navigation a:first').click();
	}
	
	var offset = parseInt((horizontal ?
		$container.css('paddingTop') :
		$container.css('paddingLeft'))
		|| 0) * -1;
	
	var scrollOptions = {
		target:$scroll,
		items:$panels,
		prev:'img.left',
		next:'img.right',
		axis:'xy',
		onAfter:trigger,
		offset:offset,
		duration:700,
		easing:'easeout'
	};
	
	$('#slider').serialScroll(scrollOptions);
	
	$.localScroll(scrollOptions);
	
	scrollOptions.duration = 1;
	$.localScroll.hash(scrollOptions);

	$('#slider .navigation .subnavigation').slideUp(100);

	//	handle subnav

		//	hover
	$('#slider .navigation li.haschildren > a').hover(
		function(){
			//	if not already open, go ahead and open this subnav; close any other open subnav
			if (!$(this).next().hasClass('open')) {
				$('#slider .open').slideUp("normal");
				$('#slider .open').removeClass('open');
				$(this).next().addClass('open');
				$(this).next().slideDown("normal");
			}
		},
		function(){
			//	include this empty function to keep lavalamp menus working!
		}
	);

/*
	$('#slider .navigation li.nochildren a').hover(function(){
		if ('subnav' != $(this).attr('class')) {
			$('#slider .open').slideUp("normal");
			$('#slider .open').removeClass('open');
		}
	});
*/

		//	click & lock in place
/*
	$('#slider .navigation li.haschildren > a').click(function(){
		$('#slider .open').slideUp("normal");
		$('#slider .open').removeClass('open');
		$(this).next().addClass('open');
		$(this).next().slideDown("normal");
	});
*/
	$('#slider .navigation li.nochildren a').click(function(){
		if (!$(this).hasClass('subnav')) {
			$('#slider .open').slideUp("normal");
			$('#slider .open').removeClass('open');
		}
	});

});
})(jQuery);
