function popup(datei, name, steuerung)
{
window.open(datei, name, steuerung);
}




function checkForm()
{
  
//====== Prueft Feld nachname ======

if(document.kontakt.Name.value=="")
{
alert ("Bitte Ihre Nachnamen eingeben");
document.kontakt.Name.focus();
return false;
}


//====== Prueft Feld NAME ======

if(document.kontakt.Vorname.value=="")
{
alert ("Bitte ihren Vornamen eingeben");
document.kontakt.Vorname.focus();
return false;
}


//====== Prueft Feld email ======

if(document.kontakt.eMail.value.indexOf('@')==-1 ||document.kontakt.eMail.value.indexOf('.')==-1)
{
alert ("Bitte geben Sie eine gültige E-Mail-Adresse ein.");
document.kontakt.eMail.focus();
return false
}



} 
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.0
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && document.getElementById) x=document.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function MM_showHideLayers() { //v3.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v='hide')?'hidden':v; }
    obj.visibility=v; }
}
 

function allOff()
{
	MM_showHideLayers('navi3','','hide');
}

// switch off the dropDown if mouse y-position is above menu strip!
var IE = document.all?true:false
if (!IE) document.captureEvents(Event.MOUSEMOVE)
document.onmousemove = getMouseXY;
var tempX = 0
var tempY = 0

function getMouseXY(e)
{
	  if (IE)
	  {
		tempX = event.clientX + document.body.scrollLeft
		tempY = event.clientY + document.body.scrollTop
	  }
	  else
	  {
		tempX = e.pageX
		tempY = e.pageY
	  }
	  if (tempX < 0) {tempX = 0}
	  if (tempY < 0) {tempY = 0}

	 // layer off!!!!
	 if(tempY > 125	|| tempY < 60 || tempX < 280 || tempX > 330)
	 {
		allOff();
	 }
	  return true
}



// var Level = "";

// Knoten ermitteln
function getNode(aNodeAdress)
{
    var i       = -1;
    for (i = 0; i < myTree.length; i++)
    {
        if (myTree[i].nodeAdress == aNodeAdress)
        {
            return  myTree[i];
        }
    }
    return null;
}

// Level aus Übergabeparameter myLevel ermitteln
function getLevel(){
    var a = window.location.search;
    if (a.indexOf("?myLevel=") > -1 )
    {
        a = a.substring(a.indexOf("?myLevel=") + 9, a.length );
        if( a.length > 0)
        {
            Level = a;
            return;
        }
        else
        {
            Level = "";
            return;
        }
    }
}
getLevel();



function getHtmlCodeLeftMenu( )
	{
	var str = "";
	if ( levelDeepness == 2)
	{		 
		for (i=0; i<parentBrothersNode.length; i++)
		{			
			if ( parentBrothersNode[i].nodeAdress == currentParentNode )
			{
				  // Das ist mein direkter Vater
				  
	str = str + '<table border="0" cellspacing="0" cellpadding="0"   width="190"  class="nav2-a">';
    str = str + '	<tr> ';
    str = str + '  		<td><a href="' + parentBrothersNode[i].target + '">' + parentBrothersNode[i].label + '</a></td>';
    str = str + '	</tr>';
 	str = str + '</table>';
				 

				for (j=0; j<brotherNodes.length; j++)
				{
					if ( brotherNodes[j].nodeAdress == Level )
					{
					  // Das bin ich
	str = str + '<table border="0" cellspacing="0" cellpadding="0"   width="190"  class="nav2-a">';
    str = str + '	<tr> ';
    str = str + '  		<td><a href="' + brotherNodes[j].target + '">' + brotherNodes[j].label + '</a></td>';
    str = str + '	</tr>';
  	str = str + '</table>';
					 
					  
					  // hier die Kinder anzeigen
					  for (x=0; x<childNodes.length; x++)			
					  {
	str = str + '<table border="0" cellspacing="0" cellpadding="0"   width="190"  class="nav2">';
    str = str + '	<tr> ';
    str = str + '  		<td><a href="' + childNodes[x].target + '">' + childNodes[x].label + '</a></td>';
    str = str + '	</tr>';
  	str = str + '</table>';
					 					  
					
					  }
					}
					else
					{
					  // Meine Brüder
					  	str = str + '<table border="0" cellspacing="0" cellpadding="0"   width="190"  class="nav2">';
    					str = str + '	<tr> ';
    					str = str + '  		<td><a href="' + brotherNodes[j].target + '">' + brotherNodes[j].label + '</a></td>';
    					str = str + '	</tr>';
    					str = str + '</table>';
	 
					}
				}
			}
			else
			{
				  // Die Brüder meines Vaters
				  	str = str + '<table border="0" cellspacing="0" cellpadding="0"   width="190"  class="nav2">';
    				str = str + '	<tr> ';
    				str = str + '  		<td><a href="' + parentBrothersNode[i].target + '">' + parentBrothersNode[i].label + '</a></td>';
    				str = str + '	</tr>';
    				str = str + '</table>';
 
				 
			}
		}
	}
	else
	{
		if ( levelDeepness == 0)
		{
			for (j=0; j<childNodes.length; j++)
			{
		 				

			  // Meine Kinder
					str = str + '<table border="0" cellspacing="0" cellpadding="0"   width="190"  class="nav2">';
    				str = str + '	<tr> ';
    				str = str + '  		<td><a href="' + childNodes[j].target + '">' + childNodes[j].label + '</a></td>';
    				str = str + '	</tr>';
    				str = str + '</table>';			  
	 
			}
		}
		if ( levelDeepness == 1)
		{
			for (i=0; i<brotherNodes.length; i++)
			{
				 

				if ( brotherNodes[i].nodeAdress == Level )
				{
					  // Das bin ich selbst
					str = str + '<table border="0" cellspacing="0" cellpadding="0"   width="190"  class="nav2-a">';
    				str = str + '	<tr> ';
    				str = str + '  		<td><a href="' + brotherNodes[i].target + '">' + brotherNodes[i].label + '</a></td>';
    				str = str + '	</tr>';
    				str = str + '</table>';							  
					 
 // Meine Kinder
					for (j=0; j<childNodes.length; j++)
					{
					  	str = str + '<table border="0" cellspacing="0" cellpadding="0"   width="190"  class="nav2">';
    					str = str + '	<tr> ';
    					str = str + '  		<td><a href="' + childNodes[j].target + '">' + childNodes[j].label + '</a></td>';
    					str = str + '	</tr>';
    					str = str + '</table>';
					 
					}
				}
				else
				{
					  // Meine Brüder
					str = str + '<table border="0" cellspacing="0" cellpadding="0"   width="190"  class="nav2">';
    				str = str + '	<tr> ';
    				str = str + '  		<td><a href="' + brotherNodes[i].target + '">' + brotherNodes[i].label + '</a></td>';
    				str = str + '	</tr>';
    				str = str + '</table>';							  
 
				}
			}
		}
		if ( levelDeepness == 3)
		{
			for (p=0; p<grandpaBrothersNode.length; p++ )
			{
				if ( grandpaBrothersNode[p].nodeAdress == currentGrandpaNode )
				{
					// Das ist mein direkter Oppa
					//str = str + '<tr>';
					//str = str + '  <td colspan="3" height="1" class="linie-weiss"><img src="images/pixel.gif" alt="" width="1" height="1"></td>';
					//str = str + '</tr>';
					//str = str + '<tr>';
					//str = str + '  <td  class="navleft-aktiv" width="10">&nbsp;</td>';
					//str = str + '  <td colspan="2"  class="navleft-aktiv" height="25" ><a href="' + grandpaBrothersNode[p].target + '" class="navleft-aktiv">' + grandpaBrothersNode[p].label + '</a></td>';
					//str = str + '</tr>';
					for (i=0; i<parentBrothersNode.length; i++)
					{	
						if ( parentBrothersNode[i].nodeAdress == currentParentNode )
						{
							//str = str + '<tr>';
							//str = str + '  <td  class="navleft2-aktiv" width="10">&nbsp;</td>';					  
					  		//str = str + '  <td  colspan="2" class="navleft2-aktiv" valign="top"  height="20"><img src="images/pfeil-rot.gif" width="11" height="10"><a href="' + parentBrothersNode[i].target + '" class="navleft2-aktiv">' + parentBrothersNode[i].label + '</a></td>';
					  		//str = str + '</tr>';	
							for (b=0; b<brotherNodes.length; b++)
							{	
								if ( brotherNodes[b].nodeAdress == Level )
								{
								
									//str = str + '<tr>';
									//str = str + '  <td  class="navleft2-aktiv" width="10">&nbsp;</td>';	
									//str = str + '  <td  class="navleft2-aktiv" width="20">&nbsp;</td>';					  
									//str = str + '  <td  class="navleft2-aktiv" valign="top"><a href="' + brotherNodes[b].target + '" class="navleft2-aktiv">' + brotherNodes[b].label + '</a></td>';
									//str = str + '</tr>';
									//str = str + '<tr>';
								//	str = str + '  <td colspan="3" height="8"  class="navleft2"><img src="images/pixel.gif" width="2" height="8"></td>';	
								//	str = str + '</tr>';			
						  
						  											
								}
								else
								{
								//	str = str + '<tr>';
								//	str = str + '  <td  class="navleft2" width="10">&nbsp;</td>';	
								//	str = str + '  <td  class="navleft2" width="20">&nbsp;</td>';					  
								//	str = str + '  <td  class="navleft2" valign="top"><a href="' + brotherNodes[b].target + '" class="navleft2">' + brotherNodes[b].label + '</a></td>';
								//	str = str + '</tr>';
								//	str = str + '<tr>';
								//	str = str + '  <td colspan="3" height="8"  class="navleft2"><img src="images/pixel.gif" width="2" height="8"></td>';	
									//str = str + '</tr>';			
						  
								}
							}															
						}
						else
						{
					  		//str = str + '<tr>';
					  		//str = str + '  <td  class="navleft2" width="10">&nbsp;</td>';					  
					  		//str = str + '  <td  colspan="2" class="navleft2" valign="top"  height="20"><img src="images/pfeil-rot.gif" width="11" height="10"><a href="' + parentBrothersNode[i].target + '" class="navleft2">' + parentBrothersNode[i].label + '</a></td>';
					  		//str = str + '</tr>';
						}
					}				
				}
				else
				{
					// Die Brueder von meinem Opa anzeigen
					//str = str + '<tr>';
					//str = str + '  <td colspan="3" height="1" class="linie-weiss"><img src="images/pixel.gif" alt="" width="1" height="1"></td>';
					//str = str + '</tr>';
					//str = str + '<tr>';
					//str = str + '  <td  class="navleft"  width="10">&nbsp;</td>';				  
					//str = str + '  <td  colspan="2" class="navleft" height="25" ><a href="' + grandpaBrothersNode[p].target + '" class="navleft">' + grandpaBrothersNode[p].label + '</a></td>';
					//str = str + '</tr>';						
				}				
			}
		}
	}

	return str;
}




// Top Level
//var TopLevel = "";
function Node_getTopNodes()
{
    var i       = -1;
    var result  = new Array();
    for (i = 0; i < myTree.length; i++)
    {
       if (myTree[i].nodeAdress.length == 2 )
       {
           result[result.length] = myTree[i];
       }
    }
    return result;
}

 
function getHtmlCodeMainMenu( navLevel )
{
	var arr = new Array();
	arr = topNodes;
	var str = '';

	var levelCount = "";
	levelCount = Level.substring(1,2);
	for (i=0; i<arr.length; i++)
	{
		var imageName = i+1;	
		var imageState = 0;
		if( Level != "" && imageName - 1 == levelCount ) 
			imageState = 1;
		str = str + '<td  valign="top"><a href="' + arr[i].target + '" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage(\'nav' + imageName + '\',\'\',\'http://www.mekutec.com/images/de/nav/' + imageName + '-1.gif\',1);MM_showHideLayers(\'navi' + imageName + '\',\'\',\'show\')""><img name="nav' + imageName + '" border="0" src="http://www.mekutec.com/images/de/nav/' + imageName + '-' + imageState + '.gif"></a></td>';
	}
	return str;
}


 




function Node_getBrothers(aNodeAdress)
{
	var orgAdress = aNodeAdress;

	var pos  = -1;
	pos = aNodeAdress.lastIndexOf( "." );
	if ( pos != -1 )
	{
		aNodeAdress = aNodeAdress.substring(0, pos );
	}

    var i       = -1;
    var result  = new Array();
    for (i = 0; i < myTree.length; i++)
    {
       if (myTree[i].nodeAdress.indexOf(aNodeAdress) == 0 && myTree[i].nodeAdress.length == orgAdress.length )
       {
           result[result.length] = myTree[i];
       }
    }
    return result;
}

function getLevelDeepness(currentAddress )
{
	// punkte "." in der aktuellen Adresse zählen
	var dotCounter = 0;
	var dotFound = false;
	var dotPos = 0;

	do
	{
		dotPos = currentAddress.indexOf("." );
		if ( dotPos != -1 )
		{
			dotCounter = dotCounter + 1;
			dotFound = true;
			currentAddress = currentAddress.substring(dotPos+2, currentAddress.length );
		}
		else
		{
			dotFound = false;
		}

	} while (dotFound == true);
	return (dotCounter);
}


function Node_getChilds(aNodeAdress)
{
    var i       = -1;
    var result  = new Array();
    for (i = 0; i < myTree.length; i++)
    {
        if (myTree[i].nodeAdress.length > aNodeAdress.length)
        {
            if (myTree[i].nodeAdress.indexOf(aNodeAdress) == 0 &&
                myTree[i].nodeAdress.substring(aNodeAdress.length+1).indexOf('.') == -1 &&
                (myTree[i].nodeAdress.charAt(aNodeAdress.length) == '.'  ||
                 aNodeAdress.length == 0))
            {
                result[result.length] = myTree[i];
            }
        }
    }
    return result;
}

function Node_getBrothers(aNodeAdress)
{
	var orgAdress = aNodeAdress;

	var pos  = -1;
	pos = aNodeAdress.lastIndexOf( "." );
	if ( pos != -1 )
	{
		aNodeAdress = aNodeAdress.substring(0, pos );
	}

    var i       = -1;
    var result  = new Array();
    for (i = 0; i < myTree.length; i++)
    {
       if (myTree[i].nodeAdress.indexOf(aNodeAdress) == 0 && myTree[i].nodeAdress.length == orgAdress.length )
       {
           result[result.length] = myTree[i];
       }
    }
    return result;
}


var levelDeepness = getLevelDeepness(Level);
var brotherNodes = Node_getBrothers( Level );
var childNodes = Node_getChilds( Level );
var parentNodes = new Array();
var grandPaNodes = new Array();
var parentBrothersNode = new Array();
var currentParentNode = "";
var topNodes = Node_getTopNodes( );

// Wenn Level 2 dann besondere behandlung
if ( levelDeepness == 2)
{
	pos = Level.lastIndexOf(".");
	if (pos != -1 )
		currentParentNode = Level.substring(0, pos);
	brotherNodes = Node_getBrothers( Level );
	parentBrothersNode = Node_getBrothers( currentParentNode );
}

function getSitemap( adress )
{
    if (typeof  myTree != "undefined")
    {
		var sitemap = Node_getChilds(adress);

		var w = "";			// String mit der Adresse, der durchsucht wird fuer feststellen der Ebene

		var x = 0;			 // Allgemeiner Schleifenzaehler fuer Abarbeitung des Baumes

		var y = new Array(); // Array mit den Positionen des Punktes in der Adresse
							 // Die Laenge des Arrays wird als Kriterium fuer das Einrueckender Zellen genommen

		var z = 0;			 // Allgemeiner Schleifenzähler, innere Schleife



		for (x = 0; x < sitemap.length; x++)
	    {

			w = sitemap[x].nodeAdress;
			y = w.match(/\./g);



			// Wenn Ebene 1: Leerzeile vorschalten
			if( !y )
			{
					//document.writeln("<tr><td colspan=10>&nbsp;</td></tr>");
			}

			// Nur ausgeben, wenn Link nicht leer und Label nicht "new node"
			var emptyNode = false;
			if( dummy == 'new page' || sitemap[x].target == ''){
				emptyNode = true;
			}

			// Nur ausgeben, wenn keine Dummy-Ebene
			var dummy = sitemap[x].label;

			if(dummy.substring(0,5) != 'dummy' && ! emptyNode )
			{



				// Neue Zeile
				document.writeln("<tr>");

				if(y)
				{
					// einruecken, pro Ebene um 1 Zelle
					for(z=0; z< y.length; z++)
					{

							document.write("<td class=fliesstext>&nbsp;</td>");

					}
				}



				// Wenn Ebene 1: Colspan setzen
				if(y)
				{
					if( y.length == 1)
					{
						document.write( '<td class=fliesstext colspan=8><a href=\"' + sitemap[x].target + '\">'  + sitemap[x].label +  '</a></td> ');
					}
					else
					{
						// colspan = 10-y.length
						document.write( '<td class=fliesstext colspan=');
						document.write( 10-y.length-1);
						document.write('><a href=\"' + sitemap[x].target + '\">'  + sitemap[x].label +  '</a></td> ');
					}
				}
				else
				{
					document.write( '<td class=fliesstext colspan=10><b><a href=\"' + sitemap[x].target + '\">'  + sitemap[x].label +  '</a></b></td> ');
				}

				// Neue Zeile abschliessen
				document.writeln(" </tr> ");
				 

			} // Ende Pruefung auf Dummy-Ebene

			// rekursiver Aufruf für SubTrees
			if( ! emptyNode ){
				getSitemap(sitemap[x].nodeAdress );
			}
		}
	}
}
 
 	
