var target_fragment = '';

function highlight_load()
{
	frag_highlight(location.hash.substring(1));
}

function frag_highlight(frag)
{
	var fragment = document.getElementById(frag);
	if (target_fragment.length > 0 && document.getElementById(target_fragment)) {
		document.getElementById(target_fragment).className = '';
	}
	if (frag.length > 0 && fragment) {
		target_fragment = frag;
		fragment.className = 'fragment';
	}
}

function onclick_highlight(a_id)
{
	if (document.getElementsByTagName) {
		var alinks = document.getElementById(a_id).getElementsByTagName('a');
		for (i = 0; i < alinks.length; i++) {
			if (alinks[i].getAttribute('href').indexOf('#') >= 0) {
				var fragment = alinks[i].getAttribute('href').substring(alinks[i].getAttribute('href').indexOf('#') + 1);
				var e_onclick_function = "frag_highlight('" + fragment + "')";
				var new_function = new Function('e', e_onclick_function);
				alinks[i].onclick = new_function;
			}
		}
	}
}

function calendar_filter(a_filter)
{
	var l_element = document.getElementById('calendar_filter');
	var l_element = document.getElementById('type_0');
	l_element.className = '';
	var l_element = document.getElementById('type_1');
	l_element.className = '';
	var l_element = document.getElementById('type_2');
	l_element.className = '';
	var l_element = document.getElementById('type_3');
	l_element.className = '';
	var l_table = document.getElementById("calendar_main");
	var l_rows = l_table.getElementsByTagName("TR");
	var new_row = Array();
	for(i = 0; i < l_rows.length; i++) {
		if ((a_filter != l_rows[i].className) && (a_filter != "type_0") && (l_rows[i].className != "month") && (l_rows[i].className != "header"))  {
			l_rows[i].style.display = "none";
		} else {
			l_rows[i].style.display = "";
			new_row.push(l_rows[i]);
		}
	}
	for (i = 0; i < new_row.length - 1; i++) {
		if ((new_row[i].className == "month") && (new_row[i+1].className == "month"))  {
			new_row[i].style.display = "none";
		}
	}
	if (new_row[new_row.length -1].className == "month") {
		new_row[i].style.display = "none";
	}
	var l_element = document.getElementById(a_filter);
	l_element.className = 'active';
}