$(document).ready(function(){
	$(".pickclass a:hover").css('cursor','pointer');
	var hash = document.location.hash;
	if (hash.length){
		if (hash == '#alle') {
			$().getExercises('all');	
		} else if (hash == '#andre') {
			$().getExercises('other');
		} else {
			$().getExercises(hash.substring(6));
		}
	} else {
		$().getExercises('all');
	}
});

$.fn.getExercises = function(targetgrade)
{
	// first, remove any selected classes
	$(".pickclass a").removeClass('selected');
	$("#targetgrade_"+targetgrade).addClass('selected');

	// set url hash and h3 list title
	var hash = '';
	if (targetgrade == 'all') {
		hash = 'alle';		
		$("#exerciselisttitle").text('Alle oppgaver');
	} else if (targetgrade == 'other') {
		hash = 'andre';
		$("#exerciselisttitle").text('Andre oppgaver');
	} else {
		$("#exerciselisttitle").text('Oppgaver for '+targetgrade+'. trinn');
		hash = 'trinn'+targetgrade;
	}
	document.location.hash = hash; 
	
	var base_url =  $().msg('uri_api') + $().msg('exercise_module');
	
	if (targetgrade == 'all') {
		base_url += '/get?published_status=published&where=teacher_text+IS+NOT+NULL&order_by=title+ASC&format=ids';
	} else if (targetgrade == 'other') {
		base_url += '/getwithouttargetgrade';	
	} else {
		base_url += '/getexercisefortargetgrade?targetgrade='+targetgrade;
	}

	var exercisecontainer = $('#exercises-list');
	$("#loader").show();
	exercisecontainer.slideUp().empty();
	if (exercisecontainer.length){
		$.getJSON(base_url,function(exercise_ids) { 
			if (exercise_ids !== null && exercise_ids.length !== undefined){
				var ids_urlstring = '';
				for (i=0; i < exercise_ids.length; i++) {
					ids_urlstring += exercise_ids[i]+',';
				}
				var markup_url = $().msg('url_prefix') + '/'+$().msg('exercise_module')+'/'+$().msg('row')+'/?id='+ids_urlstring;
				$.get(markup_url,function(data) { 
					$("#loader").hide();
					exercisecontainer.html(data).slideDown();
				});
			}
		});
	}
}
