$(function () {

	sortImgUrls = {
		desc: {
			active : "images/sort_down1.gif",
			passive : "images/sort_down.gif"
		},
		asc: {
			active : "images/sort_up1.gif",
			passive : "images/sort_up.gif"
		}
	};

	$("#sort-by-title-desc").click(function () {
		if ( $(this).is(".passive") ) {
			return;
		}
		changeSortImgsStates(this.id);
		$(this).attr("src", sortImgUrls.desc.passive);
		sortTableRowsByTd(0, "desc")
	});

	$("#sort-by-title-asc").click(function () {
		if ( $(this).is(".passive") ) {
			return;
		}
		changeSortImgsStates(this.id);
		$(this).attr("src", sortImgUrls.asc.passive);
		sortTableRowsByTd(0, "asc")
	});

	$("#sort-by-date-desc").click(function () {
		if ( $(this).is(".passive") ) {
			return;
		}
		changeSortImgsStates(this.id);
		$(this).attr("src", sortImgUrls.desc.passive);
		sortTableRowsByTd(1, "desc")
	});
	$("#sort-by-date-asc").click(function () {
		if ( $(this).is(".passive") ) {
			return;
		}
		changeSortImgsStates(this.id);
		$(this).attr("src", sortImgUrls.asc.passive);
		sortTableRowsByTd(1, "asc")
	});

	function changeSortImgsStates (id) {
		$("#sort-by-title-desc, #sort-by-date-desc").attr("src", sortImgUrls.desc.active).attr("class", "active");
		$("#sort-by-title-asc, #sort-by-date-asc").attr("src", sortImgUrls.asc.active).attr("class", "active");
		$("#" + id).attr("class", "passive");
	}

	function sortTableRowsByTd (tdIndex, ascDesc) {
		var ln = $("#digestlist tr").length-1;
		for (var i=1; i<ln; i++) {
			for (var k=i+1; k<=ln; k++) {
				var txtPrev = $("#digestlist tr:eq(" + i + ") td:eq(" + tdIndex + ")").text();
				var txtNext = $("#digestlist tr:eq(" + k + ") td:eq(" + tdIndex + ")").text();
				var cond = ( ascDesc == "desc" ) ? (txtPrev > txtNext) : (txtPrev < txtNext);
				if ( cond ) {
					var prev_html = $("#digestlist tr:eq(" + i + ")").html();
					$("#digestlist tr:eq(" + i + ")").html($("#digestlist tr:eq(" + k + ")").html());
					$("#digestlist tr:eq(" + k + ")").html(prev_html);
				}
			}
		}
	}
});
