function proccessNavigation(id) {
	var leftNav = $('leftNav');
	collapseNavigation(leftNav);
	
	var indexes = []; var subs = [];
	findIndexes(id,menu,indexes,subs);
	
	expandNavigation(indexes,subs);
	aks_setView('leftNav',true);
}

function findIndexes(id,m,indexes,subs) {
	if (typeof m.length != "undefined") {
		for(var i=0;i<m.length;i++)
			if (findIndexes(id,m[i],indexes,subs)) {
				if (subs.length == 0) {
					subs[0] = i+1;
				}
				indexes[indexes.length] = i;
				return true;
			}
	} else
		if (id == m) {
			return true;
		}
	return false;
}

function expandNavigation(indexes,subs) {
	var a = menu; var a_prev;
	for(var i = indexes.length-1;i>=0;i--) {
		a_prev = a;
		a = a[indexes[i]];
		expandNode(a);
	}
	
	if ((subs.length==0) || (subs[0].length==0)) return;
	
	a = a_prev[subs[0]];
	if ((typeof a == "undefined") || (typeof a.length == "undefined") ) return;
	
	for(i=0;i<a.length;i++) {
		if (typeof a[i].length != "undefined") continue;
		num = 'left_nav'+a[i];
		if ($(num)) $(num).style.display = "block"; 
	}
}

function expandNode(n) {
	if (typeof n.length != "undefined") {
		for(var i=0;i<n.length;i++) {
			if (typeof n[i].length != "undefined") continue;
			else {
				num = 'left_nav'+n[i];
				if ($(num)) $(num).style.display = "block";
			}
		}
	} else {
		num = 'left_nav'+n;
		if ($(num)) $(num).style.display = "block"; 
	}
}

function collapseNavigation(elem) {
	if ( (typeof elem.tagName != "undefined") && (elem.tagName == "SPAN")) {
		if (elem.title != "0")
			elem.style.display = "none";
		elem.level = elem.title;
		elem.title = "";
	} else
		if (elem.hasChildNodes()) {
			var children = elem.childNodes;
		    for (var i = 0; i < children.length; i++) { 
				if (children[i].nodeType != 1) continue;
				collapseNavigation(children[i]);
			}
		}
}