function show3rdLevelNavi(id){
    document.getElementById("navi_3th_level_tablediv_default").style.visibility = "hidden";
    document.getElementById(id).style.visibility = "visible";
    document.getElementById("navi_3th_level_hide_bottom").style.visibility = "visible";
    document.getElementById("navi_3th_level_hide_left").style.visibility = "visible";
}
		
function hideAll3rdLevelNavi(){
    document.getElementById("navi_3th_level_hide_bottom").style.visibility = "hidden";
    document.getElementById("navi_3th_level_hide_left").style.visibility = "hidden";
    try{
        var i = 0;
        while(true){
            var id = "navi_3th_level_tablediv" + i;
            var oElement, oStyle;
            if (document.getElementById
                && (oElement = document.getElementById(id))
                && (oStyle = oElement.style)) {
                    oStyle.visibility = "hidden";
            }
            else {
                break;
            }
            i = i + 1;
        }
    }
    catch(e){
    }
    document.getElementById("navi_3th_level_tablediv_default").style.visibility = "visible";
}

/* for highlighting of the lexicon navigation. */
var activeElement = "";
/* for remembering of the active lexicon article. Difference to activeElement: Some content links are never highlighted but they are shown, then only this value is set. */
var actUri;
    
function toggleActiveElement(uri) {
 var newElements = document.getElementsByName(uri);
 if (activeElement != "") {
  var elements = document.getElementsByName(activeElement);
  if(elements != null && elements.length > 1) {
   // don't deactivate if the new uri is not from the navigation (no visible element): 
   if(newElements != null && newElements.length >1) {
    // de-activate the currently active element
    elements[0].src=arrowNr;
    elements[1].className = "lexikon_content_left_col3_item_style";
    activeElement = "";
   }
  }
 } 
 if (uri != "") {
  // activate the new element  
  if(newElements != null && newElements.length > 1) {
   newElements [0].src=arrowAct;
   newElements [1].className = "lexikon_content_left_col3_item_style_act";
   // save the URI of the currently active element
   activeElement = uri;
  }
 }
 // save the URI of the content to show for requesting after fade out effect is finished (via callback):
 actUri = uri;
 // jQuery effects / ajax: 
 jQuery('#lexikon_content_right').slideUp("normal", fillLexiconContent);
}

function fillLexiconContent() {
 jQuery('#lexikon_content_right').load('/system/modules/de.bvi.internet.frontend2/elements/lexicon_content.jsp?uri=' + actUri);
 jQuery('#lexikon_content_right').fadeIn("slow");
}

function runSubmit() {

    var form = document.getElementsByName("lexicon_search")[0];

    if (form.query.value.length <= '<%= search.getQueryLength() %>') {
	    return false;
    }

    // Hack to allow umlauts with wildcard
    form.query.value = form.query_input.value + " OR " + form.query_input.value + "*";

    return true;
}

function showResult(resultHref) {

	try {
		top.opener.focus();
		top.opener.location.href=resultHref;
	} catch (e) {
		opener = window.open(resultHref,"_blank");
	}
}

function changeQuery() {
	if (document.searchresult_form.type[1].checked) {
		document.searchresult_form.query_input.value = document.searchresult_form.refine_query.value;
	} else {
		document.searchresult_form.query_input.value = document.searchresult_form.query.value;
	}
	document.searchresult_form.refine_query.click();
}

function submitQuery() {
	if (document.searchresult_form.type[1].checked) {
		document.searchresult_form.refine_query.value = document.searchresult_form.query_input.value;
	} else {
		document.searchresult_form.query.value = document.searchresult_form.query_input.value;
	}
	return true;
}

function submitPulldown (formName, pulldown) {

	for (var i = 0; i < document.forms[formName].elements.length; i++) {

		var el = document.forms[formName].elements[i];

		if (el.style.display != 'none') {
			if (el.value.lastIndexOf("/") != el.value.length-1) {
				// location.href= pulldown + "?" + "subpage=" + el.value;
				location.href = el.value;
			}
		}
	}
}

function changePulldown (formName, pulldownName) {
		
	var p = pulldownName.lastIndexOf("#");
	var level = parseInt(pulldownName.substring(p+1))
	pulldownName = pulldownName.substring(0, p);

	for (var i = 1; i < document.forms[formName].elements.length; i++) {

		var id = document.forms[formName].elements[i].id;
		if (id.substring(id.lastIndexOf("#")+1) > level) {
			document.forms[formName].elements[i].style.display="none";
		}
	}

	var pulldown = document.getElementById(pulldownName+"#"+level);
	var index = pulldown.selectedIndex;
	var name = pulldown.options[index].value;
	var pd;

	// if (name.lastIndexOf("/") == name.length-1) {
	//	name = name.substring(0, name.length-1);
	name = name.substring(0, name.lastIndexOf("/"));
	name = name.substring(name.lastIndexOf("/")+1, name.length);
	name = name+"#"+(level+1);

	pd = document.getElementById(name);
	if (pd) {
		pd.style.display='inline';

		if (pd.value.lastIndexOf("/") == pd.value.length-1) {
			name = pd.value.substring(0, pd.value.length-1);
			name = name.substring(name.lastIndexOf("/")+1, name.length);
			name = name+"#"+(level+2);

			pd = document.getElementById(name);
			if (pd) {
				pd.style.display='inline';
			}
		} else {
			pd = document.getElementById('empty#'+(level+2));
			if (pd) {
				pd.style.display='inline';
			}
		}
		
	} else {
		for (var i = level+1; i <= 3; i++) {
			name = 'empty#'+i;
			pd = document.getElementById(name);
			if (pd) {
				pd.style.display='inline';
			}
		}
	}
}