var newsData;
var newsActiveYear;

var initNews = function(data,activeYear,activePage) {
	newsData = data;
	newsActiveYear = activeYear;
	newsActivePage = activePage;	
	bindNewsControls();
	updateNewsControls();
}

var updateNewsControls = function() {
	var data = newsData[newsActiveYear];
	var handleNext = $('#news_next_page');
	var handlePrev = $('#news_prev_page');
	
	handlePrev.toggleClass('active', (newsActivePage > 1));
	handleNext.toggleClass('active', (newsActivePage < data['pages']));	
}

var bindNewsControls = function() {
	$('#news_next_page').click(function(){nextNewsPage()});
	$('#news_prev_page').click(function(){prevNewsPage()});
	for(var year in newsData) {
		// Javascript is fun
		$('#news_year_' + year).click((function(year){return function(){showNewsYear(year);}})(year));
	}
}

var prevNewsPage = function() {
	if(newsActivePage > 1) {
		newsActivePage--;
		updateNewsContent();
	}
}

var nextNewsPage = function() {
	if(newsActivePage < newsData[newsActiveYear]['pages']) {
		newsActivePage++;
		updateNewsContent();
	}
}

var showNewsYear = function(year) {
	for(var _year in newsData) {
		$('#news_year_' + _year).removeClass('active');
	}
	$('#news_year_' + year).addClass('active');
	newsActiveYear = year;
	newsActivePage = 1;
	updateNewsContent();
}

var updateNewsContent = function() {
	var query = '?year='+newsActiveYear+'&p='+newsActivePage+'&update=1';
	$.get('./'+query,
		function(data) {
			$('#news_items').fadeOut('fast',
				function() {
					$(this).html(data).fadeIn('fast');
				}
			);
		}
	);
	updateNewsControls();
}