/*
 * Infinite scrolling of articles
 */
$(document).ready(function() {
	var currentYScroll = 0;
	var sidebarStartYPos = 0;
	var sidebarTopPadding = 10;
	
	// Takes the sidebar to the user's position
	function sidebarFollowUser() {
		var currentSidebarYPos = getSidebarPosition();
		var newSidebarMarginTop = 0;
		
		if(currentYScroll > sidebarStartYPos) {
			newSidebarMarginTop = (currentYScroll - sidebarStartYPos) + sidebarTopPadding;
		}
				
		// Start a new one
		$('section.body > aside').stop().animate({
			marginTop: newSidebarMarginTop + 'px'
		}, 2000, 'swing', function() {
			// Animation complete.
		});
	}
	
	function getSidebarPosition() {
		var sidebarOffset = $('section.body > aside').offset();
		return sidebarOffset.top;
	}
	
	// Initialize the sidebar position stuff
	sidebarFollowUser();
	sidebarStartYPos = getSidebarPosition();
	
	$('#infinite_scroll').bind('infinitescroll.beforesend', function() {
		// no action
		$('#loader').show();
	});
	
	$('#infinite_scroll').bind('infinitescroll.finish', function() {
		$('#loader').hide();
		// make addthis render the buttons again
		window.addthis.ost = 0;
	    window.addthis.ready();
	});
	
	$('#infinite_scroll').bind('infinitescroll.maxreached', function() {
		$('#loader').hide();
	});
	
	/*
	$(window).bind('scroll', function() {
		var newYScroll = $(window).scrollTop();
		var oldScroll  = currentYScroll;
		currentYScroll = newYScroll;

		sidebarFollowUser();
	});
	*/
});

$(window).infinitescroll({
	url: window.location.href,
	triggerAt: 300,
	page: 2,
	appendTo: '#infinite_scroll'
});

