jQuery(function( $ ){
	/**
	 * Most jQuery.localScroll's settings, actually belong to jQuery.ScrollTo, check it's demo for an example of each option.
	 * @see http://flesler.demos.com/jquery/scrollTo/
	 * You can use EVERY single setting of jQuery.ScrollTo, in the settings hash you send to jQuery.LocalScroll.
	 */
	
	$('#content').scrollTo( 0, {axis:'xy'});
	$('#content').attr({scrollTop:0,scrollLeft:0});
	
	// The default axis is 'y', but in this demo, I want to scroll both
	// You can modify any default like this
	$.localScroll.defaults.axis = 'xy';
	
	// Scroll initially if there's a hash (#something) in the url 
	$.localScroll.hash({
		target: '#content', // Could be a selector or a jQuery object too.
		queue:true,
		duration:1500
	});
	
	/**
	 * NOTE: I use $.localScroll instead of $('#navigation').localScroll() so I
	 * also affect the >> and << links. I want every link in the page to scroll.
	 */
	$.localScroll({
		target: '#content', // could be a selector or a jQuery object too.
		queue:true,
		duration:2000,
		hash:true,
		onBefore:function( e, anchor, $target ){
			// The 'this' is the settings object, can be modified
		},
		onAfter:function( anchor, settings ){
			// The 'this' contains the scrolled element (#content)
		}
	});

	/**
	 * Scroll
	 */	
	$('#workshops .inner').jScrollPane({scrollbarWidth:28, scrollbarMargin:15, showArrows:true});
	//$('#therapy .inner').jScrollPane({scrollbarWidth:28, scrollbarMargin:15, showArrows:true});
	$('#about_bmc .inner').jScrollPane({scrollbarWidth:28, scrollbarMargin:15, showArrows:true});
	$('#recommendations .inner').jScrollPane({scrollbarWidth:28, scrollbarMargin:15, showArrows:true});
	$('#articles .inner').jScrollPane({scrollbarWidth:28, scrollbarMargin:15, showArrows:true});
	$('li#newsletter .inner').jScrollPane({scrollbarWidth:28, scrollbarMargin:15, showArrows:true});
	$('#links .inner').jScrollPane({scrollbarWidth:28, scrollbarMargin:15, showArrows:true});
	$('.post-single').jScrollPane({scrollbarWidth:28, scrollbarMargin:15, showArrows:true});
	
	/**
	 * Footer Hover
	 */
	$('#footer').each(function () {
		var distance = 10;
		var time = 250;
		var hideDelay = 500;

		var hideDelayTimer = null;

		var beingShown = false;
		var shown = false;
		var trigger = $('.trigger', this);
		var info = $('.popup', this).css('opacity', 0);


		$([trigger.get(0), info.get(0)]).mouseover(function () {
			if (hideDelayTimer) clearTimeout(hideDelayTimer);
			if (beingShown || shown) {
				// don't trigger the animation again
				return;
			} else {
				// reset position of info box
				beingShown = true;

				info.css({
					top: -85,
					left: 20,
					display: 'block'
				}).animate({
					top: '-=' + distance + 'px',
					opacity: 1
				}, time, 'swing', function() {
					beingShown = false;
					shown = true;
				});
			}

			return false;
		}).mouseout(function () {
			if (hideDelayTimer) clearTimeout(hideDelayTimer);
			hideDelayTimer = setTimeout(function () {
				hideDelayTimer = null;
				info.animate({
					top: '-=' + distance + 'px',
					opacity: 0
				}, time, 'swing', function () {
					shown = false;
					info.css('display', 'none');
				});

			}, hideDelay);

			return false;
		});
	});
	
});