$(function () {
	$('div#winners div.winner:nth-child(4n+4)').addClass('fourth');	
	
	
	$('#update_category_btn').click(function() {
		var year = $('select#year_stub').val();
		var category_stub = $('select#category_stub').val();
		
		location.href = '/winners/' + year + '/' + category_stub + '/';
	});
	
	$('#closer_btn').click(function (e) {
		e.preventDefault();
		$('#category_selector').fadeOut('fast');
		$('#clickout_area').hide();
	});
	
	$('#category_select_btn a').click(function (e) {
		e.preventDefault();
		$('#category_selector').fadeIn();
		$('#clickout_area').show();
	});
	
	$('#clickout_area').click(function(e) {
		e.preventDefault();
		
		$('#category_selector').fadeOut('fast');
		$('#clickout_area').hide();
	});

	$('#email').focus(function() {
		if ($(this).hasClass('unselected'))
		{
			$(this).val('');
			$(this).removeClass('unselected');
		}
	});

	$('#send_newsletter').click(function(e) {
		e.preventDefault();
		$.getJSON('/ajax.php', {
			action : 'submit_newsletter',
			email : $('#email').val()						
		}, function(results) {
			$('div.newsletter').empty().append('<p>Thank you for subscribing.</p>');
		});
	});
	


	$('#category_selector .years a').click(function (e) {
		e.preventDefault();
		
		// don't do anything if it's already selected. That would be silly. 
		if ($(this).hasClass('selected'))
			return;
			
		// change selected class to this
		$('#category_selector .years .selected').removeClass('selected');
		$(this).addClass('selected');
		
		// put loading in where the categories normally are
		var loading_li = $('<li>Loading...</li>');
		$('#category_list').empty().append(loading_li);
		
		// get selected year
		var year = parseInt($(this).attr('id').replace('year_', ''));
		
		$('#ajax_loader').show();
		
		// make ajax call
		$.ajax({
			data: {
				action: 'get_categories',
				year: year				
			},
			dataType : 'json',
			url : '/ajax.php',
			success: function (data, status)
			{
				// fade out loader
				$('#ajax_loader').fadeOut();
				
				// clear list
				$('#category_list').empty();
				
				if (data.success)
				{
					// parse through list and add 
					var cats = data.results;
					$.each(cats, function (i,o)
					{
						var li = $('<li><a href="/winners/' + year + '/' + o.slug + '/">' + o.cat_name + '</a></li>');
						$('#category_list').append(li);
					});
				}
				else
				{
					$('#category_list').append('<li>No categories found.</li>');
				}
			}			
		});
		
	});
});