/**
 * Executed when document is finished loading elements into DOM
 */
$(document).ready(function() {
	//~ $(".courses").hide();
	//~ $(".empty-category").hide();
	//~ $(".course-details").hide();
	//~ $(".hide-course").show();

	var hash = getHash();

	if (hash != "" && hash.substring(0, 1) == "c") {
		$('#category-'+hash.substring(1)).show();
	}
});

/**
 * Show/hide course details
 *
 * @param int id Course ID
 * @return boolean false
 */
function toggleCourse(id) {
	
	// don't use this code - it won't work on ie (oh, surprise...)
	//if ($("#course-details-"+id).is(":visible")) {

	var elem = $("#course-details-"+id)[0];
	
	if (elem.style.display != 'none') {
		$("#course-details-"+id).hide();
		$("#course-intro-"+id).removeClass("open");
	} else {
		$("#course-details-"+id).show();
		$("#course-intro-"+id).addClass("open");
	}

	return false;
}

/**
 * Open course. This is different from toggleCourse in that this version also opens category
 *
 * @param int id Course ID
 */
function openCourse(id) {
	$("#course-details-"+id).show();
	$("#course-intro-"+id).addClass("open");
	$("#course-details-"+id).parent().parent().show();
	document.location = "#course"+id;
}

/**
 * Refresh basket contents based on checked items
 */
function refreshCoursesBasket() {
	var course_id = "";

	var emptybasket = true;

	$(".courses input[type=checkbox]").each(function(){
		var course_id = $(this).attr("id").substr(14);

		if ($(this).is(":checked")) {
			$("#item-"+course_id).show();
			emptybasket = false;
		} else {
			$("#item-"+course_id).hide();
		}
	});

	var n = 0;

	$("#courses-basket .item").each(function(){
		if ($(this).is(":visible")) {
			$(this).find(".nr").text((++n)+".");
		}
	});

	if (emptybasket) {
		$("#courses-basket-container").hide();
	} else {
		$("#courses-basket-container").show();
	}
}

/**
 * Remove specified course from basket
 *
 * @param int id Course ID
 */
function removeCourseFromBasket(id) {
	$("#CourseCourseId"+id).attr("checked", false);
	refreshCoursesBasket()
}