var y = 140;                            // abstand vom oberen document-rand
var lastpath = '';
var actualpath = '';
var height = new Array(20,17,15);
var level = -1;
var offset = 0;
var base = 25;

var zaehler = 0;
var toggle_value = new Array(height.length)
for (i = 0; i < height.length; i++) toggle_value[i] = '';
var toggle_string = '';
var sprache;

function resetjs()                                                        // javascript hinweis zuruecksetzen
        {
        document.getElementById('jsalert').style.visibility = 'hidden';
        }

function init(startposition)                                                                /* zuweisung von id und name */
        {
        while (document.getElementsByTagName("a")[zaehler])
                {
                menu_type = parseInt(document.getElementsByTagName("a")[zaehler].className.substr(1,1));                /* feststellen des menu-levels */
                if (menu_type >= height.length)                                                /* pruefen, ob menu-level zulaessig */
                        {
                        alert("zu viele levels!");
                        break;
                        }
                if(toggle_value[menu_type] == '')                                        /* wenn an dieser stelle bisher leer, dann nun erster eintrag */
                        {
                        temp_value = 0;
                        }
                else
                        {
                        temp_value = parseInt(toggle_value[menu_type],base) + 1;        /* sonst eintrag um 1 erhoehen */
                        }
                if (temp_value == base)                                                 /* zu viele eintraege -> base erhoehen */
                        {
                        alert("increase base! " + menu_type);
                        break;
                        }
                toggle_value[menu_type] = temp_value.toString(base);                        /* eintrag als string zurueckschreiben */
                for (i = menu_type + 1; i < height.length; i++)                         /* vorherige untermenus hoeherer levels loeschen */
                        {
                        toggle_value[i] = '';
                        }
                for (j = 0; j < menu_type; j++)                                                /* ueberpruefen ob level uebersprungen wurden */
                        {
                        if (toggle_value[j] == '')
                                {
                                alert(toggle_value.join('') + " - kein eintrag in level " + j + " vorhanden");
                                break;
                                }
                        }
                toggle_string = toggle_value.join('')
                document.getElementsByTagName("a")[zaehler].id = "m" + toggle_string;
                document.getElementsByTagName("a")[zaehler].name = "m" + toggle_string;
                zaehler += 1;
                }
        config(startposition)
        calc_toggle();
        }

function config(startposition)                                        /* positionierung beim start */
        {
        level++;
        offset = startposition;
        var index = 0;
        while(index<base && document.getElementById('m' + actualpath + index.toString(base)))
                {
                if (level == 0) document.getElementById('m' + actualpath + index.toString(base)).style.visibility = 'visible';
                if (navigator.appName == "Netscape")                                                                        /* für netscape */
                        {
                        document.getElementById('m' + actualpath + index.toString(base)).style.top = offset + ((index+1)*height[level]) + "px";
                        }
                else                                                                                                        /* andere browser */
                        {
                        document.getElementById('m' + actualpath + index.toString(base)).style.pixelTop = offset + ((index+1)*height[level]);
                        }
                actualpath = actualpath + index.toString(base);
                offset += (index+1)*height[level];
                config(offset);
                actualpath = actualpath.substr(0,level);
                offset -= (index+1)*height[level];
                index++;
                }
        level -=1;
        }

function calc_toggle()
        {

            path_array = window.location.pathname.split('/');
        switch(path_array[1])
                {
                case 'furniture-mallorca':
                        sprache = 'en';
                        break;
                case 'moebel-mallorca':
                        sprache = 'de';
                        break;
                case 'muebles-mallorca':
                        sprache = 'es';
                        break;
                }

        var actual_array=location.href.split('/');                                               // aktuellen pfad feststellen
        var actual_location = '';
        for (var i = 0; i <= actual_array.length - 2; i++) actual_location = actual_location + actual_array[i] + "/";
        //alert('actual_location = ' + actual_location);

        var count = 0;
    while (document.getElementsByTagName("a")[count])                                                // für alle menu-einträge
                {
        var test_url = document.getElementsByTagName("a")[count].href           // nimm pfad des eintrags

                var test_array=test_url.split('/');
                var test_location = '';
                        for (var i = 0; i <= test_array.length - 2; i++) test_location = test_location + test_array[i] + "/";
                        //alert('test_location = ' + test_location);

        if (test_location == actual_location)                                                // vergleiche pfad mit suchwert
                {
            ref_name = document.getElementsByTagName("a")[count].name;          // eintrag gefunden
            //alert('ref_name = ' + ref_name);
            if (ref_name != 'm')
                    {
                    document.getElementsByTagName("a")[count].style.backgroundColor = "#FEC382";                //aktuellen eintrag mit hintergrund markieren
                    }
            toggle(ref_name.substr(1));                                        // menu an dieser stelle aufklappen
            break;
            }
                count+=1;
                }
        }

function toggle(path)
        {
        actualpath = path;
        index_of_subs = new Array(height.length);
        //close(lastpath);
        level = -1;
        offset = 0;
        if (path == lastpath.substr(0,path.length))
                {
                open(path.substr(0,path.length - 1));
                lastpath = path.substr(0,path.length - 1);
                }
        else
                {
                 open(path);
                lastpath = path;
                  }
        level = -1;
        offset = 0;
        }

function open(path)
        {
        if (path != '')
                {
                 level++;
                index_of_subs[level] = parseInt(path.substr(0,1),base);
                open(path.slice(1));
                temp_path = actualpath.substr(0,level + 1);
                index = 0;
                while(level<=height.length && document.getElementById('m' + temp_path + index.toString(base)))                /* darstellung der submenus in ebene level+1 */
                        {
                        document.getElementById('m' + temp_path + index.toString(base)).style.visibility = 'visible';
                        offset += height[level + 1];                                                                        /* kumulierter offset durch submenus der ebenen oberhalb level */
                        index++;
                        }
                temp_path = actualpath.substr(0,level);
                index = index_of_subs[level] + 1;
                while(index < base && document.getElementById('m' + temp_path + index.toString(base)))                        /* verschiebung der folgenden punkte in ebene level */
                        {
                          if (navigator.appName != "Netscape")
                                 {
                                   document.getElementById('m' + temp_path + index.toString(base)).style.pixelTop += offset;
                                   }
                          else
                                   {
                                   document.getElementById('m' + temp_path + index.toString(base)).style.top = (parseInt(document.getElementById('m' + temp_path + index.toString(base)).style.top) + offset) + "px";
                                   }
                        index++;
                        }
                  level -= 1;
                }
        }

