

function writeMenue(vParentID,vID,iSubstep,iPageMode){
	//###Hilfsarrays (Unterordner)###
	var aRecIDMenuePunkt=new Array();
	var aRecMenuePunkt=new Array();
	var aRecIDParent=new Array();
	var aRecPageMode=new Array();
	var j=0;
	for(g=0;g<aIDMenuePunkt.length;g++){
		if(aIDParent[g]==vParentID){
			aRecIDMenuePunkt[j]=aIDMenuePunkt[g];
			aRecMenuePunkt[j]=aMenuePunkt[g];
			aRecIDParent[j]=aIDParent[g];
			aRecPageMode[j]=aPageMode[g];
			j++;
		}//if
	}//for
	//###Ende: Hilfsarrays (Unterordner)###
	var strMenue=new String();
	if(j==0){
		strMenue="#"; //Markieren Menüpunkt hat keine Childs
	}//if
	else{
		var i=0;//als lokale Variable deklarieren (für Rekursion)!!!!!!!!!!!!!!!!
		//###alle Untermenuepunkte durchlaufen###
		for(i=0;i<aRecIDMenuePunkt.length;i++){
			//###rekursiver Aufruf###
			var strRecursive=writeMenue(aRecIDMenuePunkt[i],vID,iSubstep+1,aRecPageMode[i]); 
			//###End: rekursiver Aufruf###
			
			strColor="#ffffff";
			strSign="folder_open.gif";	//### V Menüpunkt ist Knoten und ist geöffnet
			strLinkStart="<a class='nav' href='pages.asp?Page=" + aRecIDMenuePunkt[i] + "'><b><font color=#153a85>";
			strLinkEnd="</b></font></a>";
			var strDynStyle="";//onmouseover='this.style.backgroundColor=\"DED9B3\"' onmouseout='this.style.backgroundColor=\"#ffffff\"'";
			if(aRecPageMode[i]==1){//Menüpunkt ist Gruppe
				strDynStyle="";
				strSign="group.gif";	
				strLinkStart="<font class='nav' style='cursor:default'>";
				strLinkEnd="</font>";
				if(strRecursive.indexOf("###")>-1){//Ein Nachfolger der Gruppe ist aktiviert
					strSign="group_open.gif";
					strLinkStart="<font class='nav' style='cursor:default'>";
					strLinkEnd="</font>";
				}
			}else{
				if(strRecursive==""){	//### > Menüpunkt hat Knoten und ist geschlossen
					strSign="folder.gif"; 
					strLinkStart="<a class='nav' href='pages.asp?Page=" + aRecIDMenuePunkt[i] + "'>";
					strLinkEnd="</a>";
				}//if
				if(strRecursive=="#"){	//### -Menüpunkt ist ein Blatt (keine Childs)
					strSign="node.gif";
					strLinkStart="<a class='nav' href='pages.asp?Page=" + aRecIDMenuePunkt[i] + "'>";
					strLinkEnd="</a>";
				}//if
				if(vID==aRecIDMenuePunkt[i]){	//### Menüpunkt ist ausgewählt
					strDynStyle="";
					strSign="folder_selected.gif";
					strLinkStart="<font color=#153a85 style='cursor:default'><b>";
					strLinkEnd="</b></font>";
					if(strRecursive=="#"){	//-Menüpunkt ist zusätzlich ein Blatt (keine Childs)
						strSign="node_selected.gif";
					}//if
				}//if
			}//if
			strSign="<img src='images/nav/" + strSign + "' border='0'>";
			//###wenn ID=Vorgänger- oder ID=Dieser Menüpunkt -> dann mit "###" markieren!!! dh: vorgänger sollen angezeigt werden!!!
			if((vID==aRecIDParent[i]) || (vID==aRecIDMenuePunkt[i])){
				strRecursive+="###";
			}//if
			//###Ende: wenn ID=Vorgänger- oder ID=Dieser Menüpunkt -> dann mit "###" markieren!!!
								
			//###Menü aufbauen###
			var strBoldStart="";
			var strBoldEnd="";

			if(iSubstep==0){
				var strBoldStart="";//"<b>";
				var strBoldEnd="";//"</b>";
			}
			if(aRecPageMode[i]==1){
				var strErsteSpalte="<td width="+(5+(iSubstep+1)*13)+" align=right valign=top>"+strLinkStart+strSign+strLinkEnd+"</td>";
				var strZweiteSpalte="<td width="+(165-((iSubstep)*13))+" class=nav valign=top>"+strLinkStart+strBoldStart+"&nbsp;"+aRecMenuePunkt[i]+strBoldEnd+strLinkEnd+"<br>&nbsp;</td>";			
			}else{
				var strErsteSpalte="<td width="+(5+(iSubstep+1)*13)+" align=right valign=top>"+strLinkStart+strSign+strLinkEnd+"</td>";
				var strZweiteSpalte="<td width="+(165-((iSubstep+1)*13))+" valign=top class=nav>"+strLinkStart+strBoldStart+"&nbsp;"+aRecMenuePunkt[i]+strBoldEnd+strLinkEnd+"<br><font style='font-size:7px'>&nbsp;</font></td>";			
			}
			strMenue = strMenue + "<tr><td><table "+strDynStyle+" border='0' cellspacing='0' cellpadding='0' width='100%'><tr>"+strErsteSpalte+strZweiteSpalte+"</tr></table></td></tr>"+strRecursive;
			//###Ende: Menü aufbauen###
			//###Ende: Menü aufbauen###
		}//for
	}//else
	//###Alle Einträge, in deren Ästen keine Übereinstimmung gefunden,
	//###oder Eintragsebene<>0, oder keine Untermenümarkierung enthällt
	//###->löschen
	if(!((strMenue.indexOf("###")>-1) || (vParentID==0) || (iPageMode==1) || (strMenue=="#"))){
		strMenue="";
	}//if
	aRecIDMenuePunkt=null;
	aRecMenuePunkt=null;
	aRecIDParent=null;
	aRecPageMode=null;
	return strMenue;
}//function


