// Hilfsfunktionen Anfang

function changeLayerBackgroundColor(id, color)
{
        eval("document.getElementById('"+id+"').style.backgroundColor='"+color+"';");
}

function showLayer(id)
{
        eval("document.getElementById('"+id+"').style.visibility='visible';");
}

function hideLayer(id)
{
        eval("document.getElementById('"+id+"').style.visibility='hidden';");
}

function getSyntaxCursorPointer()
{
        if(document.all) return "hand";
        else return "pointer";
}

function layerExists(id)
{
        return eval("document.getElementById('"+id+"')")
}

function getNavLevelDifference(activeNavEntry, oldNavEntry)
{
        if(activeNavEntry.length==oldNavEntry.length) return 0;
        if(activeNavEntry.length>oldNavEntry.length) return 1;
        if(activeNavEntry.length<oldNavEntry.length) return -1;
}

// Hilfsfunktionen Ende



// Funktionen zur Steuerung des Navigationsablaufs Anfang

function enableNavEntry(id)
{
        clearTimeout(navTimeOut);
        navTimeOut=0;

        var oldNavEntry=activeNavEntry;
        activeNavEntry=id;
        var childNavEntry=oldNavEntry+"_0";
        var activeNavTable=activeNavEntry+"_"+navTableName;
        var oldNavTable=oldNavEntry+"_"+navTableName;
        var navLevelDifference=getNavLevelDifference(activeNavEntry, oldNavEntry);

        if(activeNavEntry==oldNavEntry) return;

        changeLayerBackgroundColor(activeNavEntry, navEntryHighlightColor);

        if(navLevelDifference==0)
        {
                changeLayerBackgroundColor(oldNavEntry, navEntryBackgroundColor);
                if(layerExists(oldNavTable)) hideLayer(oldNavTable);
        }
        else if(navLevelDifference==-1)
        {
                var navBranch=oldNavEntry;
                while (getNavLevelDifference(navBranch, activeNavEntry)!=0)
                {
                        changeLayerBackgroundColor(navBranch, navEntryBackgroundColor);

                        navBranchTable=navBranch+"_"+navTableName;
                        if(layerExists(navBranchTable)) hideLayer(navBranchTable);

                        navBranch=navBranch.substr(0, navBranch.lastIndexOf("_"));

                        if(navBranch!=activeNavEntry) changeLayerBackgroundColor(navBranch, navEntryBackgroundColor);

                        navBranchTable=navBranch+"_"+navTableName;
                        if(layerExists(navBranchTable)) hideLayer(navBranchTable);
                }
        }

        if(layerExists(activeNavTable)) showLayer(activeNavTable);
}

function disableNavEntry(id)
{
        if(navTimeOut==0) navTimeOut=setTimeout("disableNavEntry('"+id+"')", 1000);
        else
        {
                var navBranch=id;
                while (layerExists(navBranch))
                {
                        changeLayerBackgroundColor(navBranch, navEntryBackgroundColor);

                        navBranchTable=navBranch+"_"+navTableName;
                        if(layerExists(navBranchTable)) hideLayer(navBranchTable);

                        navBranch=navBranch.substr(0, navBranch.lastIndexOf("_"));
                }
        }
}

// Funktionen zur Steuerung des Navigationsablaufs Ende



// Funktionen zum Aufbau der Navigation Anfang

function buildNavigation()
{
        // Navigationsinhalte definieren

        var index=new Array();

        navEntry=new Array();

        index[1]=0;
        navEntry[index[1]]=new Object;
        navEntry[index[1]].name='<img src="images/blank.gif" width="8" height="8" name="back5" border="0"> Shop';
        navEntry[index[1]].linkTarget="shop/index.php";

        index[1]++;
        navEntry[index[1]]=new Object;
        navEntry[index[1]].name='<img src="images/blank.gif" width="8" height="8" name="back6" border="0"> Entschlackung';
        navEntry[index[1]].linkTarget="entschlackung.php";


        index[1]++;
        navEntry[index[1]]=new Object;
        navEntry[index[1]].name='<img src="images/blank.gif" width="8" height="8" name="back7" border="0"> Molke';
        navEntry[index[1]].linkTarget="molke.php";


        index[1]++;
        navEntry[index[1]]=new Object;
        navEntry[index[1]].name='<img src="images/blank.gif" width="8" height="8" name="back8" border="0"> Immler-Kur';
        navEntry[index[1]].linkTarget="kur.php";

        index[1]++;
        navEntry[index[1]]=new Object;
        navEntry[index[1]].name='<img src="images/blank.gif" width="8" height="8" name="back9" border="0"> Vitale Vollwertküche';
        navEntry[index[1]].linkTarget="vollwertkueche.php";

        index[1]++;
        navEntry[index[1]]=new Object;
        navEntry[index[1]].name='<img src="images/blank.gif" width="8" height="8" name="back10" border="0"> Gesund Genießen';
        navEntry[index[1]].linkTarget="gesund.php";

                index[1]++;
        navEntry[index[1]]=new Object;
        navEntry[index[1]].name='<img src="images/blank.gif" width="8" height="8" name="back11" border="0"> Natürliche Körperpflege';
        navEntry[index[1]].linkTarget="koerperpflege.php";

                index[1]++;
        navEntry[index[1]]=new Object;
        navEntry[index[1]].name='<img src="images/blank.gif" width="8" height="8" name="back12" border="0"> Algen und Aloe Vera';
        navEntry[index[1]].linkTarget="aloe_vera.php";

                index[1]++;
        navEntry[index[1]]=new Object;
        navEntry[index[1]].name='<img src="images/blank.gif" width="8" height="8" name="back13" border="0"> Nordic Walking';
        navEntry[index[1]].linkTarget="nordic_walking.php";

                index[1]++;
        navEntry[index[1]]=new Object;
        navEntry[index[1]].name='<img src="images/blank.gif" width="8" height="8" name="back14" border="0"> Empfohlene Hotels';
        navEntry[index[1]].linkTarget="webcms/pages/hotels.php";

        // Startwerte fuer Rekursive Funktion buildNavLevel(navEntry) setzen
        navEntry[0].parentID=navID_Name;
        navEntry[0].parentPos=0;
        navEntry[0].level=0;

        // HTML fuer die Navigation erstellen
        buildNavLevel(navEntry);
}

function buildNavLevel(navArray)
{
        // Position der Menues berechnen
        var xPos=navStartPosX+navEntryWidth*navArray[0].level;
        var yPos=navStartPosY+navEntryHeight*navArray[0].parentPos;

        // Eindeutige Tabellen-ID bestimmen
        currentID=navArray[0].parentID+"_"+navTableName;

        // Visibility bestimmen
        if(navArray[0].level<=navVisibilityLevel) visibility="visible";
        else visibility="hidden";

        // HTML-Code Menuetabelle oeffnen
        var output="";
        output=output+'<table border="0" cellspacing="0" cellpadding="0" id="'+currentID+'" class="navTable" style="left: '+xPos+'px; top: '+yPos+'px; width: '+navEntryWidth+'px; background: #'+navEntryBackgroundColor+'; cursor: '+syntaxCursorPointer+'; visibility: '+visibility+'">';

        for(var i=0; i<navArray.length; i++)
        {
                // Eindeutige Eintrags-ID bestimmen
                currentID=navArray[0].parentID+"_"+i;

                // Bei weiterem SubLevel Pfeil durch CSS-String einfuegen
                if(navArray[i].subLevel) backgroundStyleString=' style="background: url(images/navArrow.gif) no-repeat right;"';
                else backgroundStyleString='';

                // Bei Link a Tag-String mit Ziel einfuegen
                if(navArray[i].linkTarget!="")
                {
                  aTagBeginn='<a target="haupt" href="'+navArray[i].linkTarget+'" onClick="spot(\''+currentID+'\')" onFocus="if(document.all) this.blur()">';
                        aTagEnd='</a>';
                }
                else
                {
                        aTagBeginn='';
                        aTagEnd='';
                }

                // HTML-Code Menueeintraege
                output=output+'<tr><td onclick="javascript: window.parent.haupt.location.href = \''+navArray[i].linkTarget+'\',spot(\''+currentID+'\')" onmouseover="enableNavEntry(\''+currentID+'\');" onmouseout="disableNavEntry(\''+currentID+'\');" id="'+currentID+'" class="navEntry"'+backgroundStyleString+'>'+aTagBeginn+navArray[i].name+aTagEnd+'</td></tr>\n';

                if(navArray[i].subLevel)
                {
                        navArray[i].subLevel[0].parentID=currentID;
                        navArray[i].subLevel[0].parentPos=navArray[0].parentPos+i;
                        navArray[i].subLevel[0].level=navArray[0].level+1;
                        buildNavLevel(navArray[i].subLevel);
                }
        }

        // HTML-Code Menuetabelle schiessen
        output=output+'</table>\n';

        // Bei Bedarf Navigationsquelltext als HTML-Code ausgeben lassen
        //output=output.replace(/</g, "&lt;");
        //output=output.replace(/>/g, "&gt;");

        document.write(output);
}

// Funktionen zum Aufbau der Navigation Ende
