// Menue-Layout-Angaben:

// =====================

    KhgBild = "";             // Hintergrundbild des klappFrame; falls leer, wie Menue

  ZielFrame = "dataFrame";         // Name des Frames (nicht der Datei!), in den standardmaessig alle Links geladen werden

    BildURL = "";             // Pfad zu Icons von JS-Menue

   LinkBild = "pics/menu_sub_button.gif";   // Dateiname des standardmaessig benutzten Icons fuer Links

    Schrift = "Arial,sans-serif";         // die fuer das Menue benutzte(n) Schriftart(en)

 Schliessen = "1";            // Ordner schliessen, wenn anderer Ordner geoeffnet wird? (1=ja, 0=nein)

    AllesZu = "1";            // Unterordner schliessen, wenn anderer Unterordner geoeffnet wird? (1=ja, 0=nein)

    VerzAuf = "Ordner &ouml;ffnen";       // Standard-Mouseover- und Statuszeilentext bei geschlossenen Ordnern

     VerzZu = "Ordner schlie&szlig;en";   // Standard-Mouseover- und Statuszeilentext bei geoeffneten Ordnern

 VerzZuLink = "1"             // Ordner-Link wird auch beim Schliessen des Ordners geoeffnet (1=ja, 0=nein)

   KlappAuf = "Alle Ordner auf";          // Text, Mouseover- und Statuszeilentext im klappFrame

    KlappZu = "Alle Ordner zu";           // Text, Mouseover- und Statuszeilentext im klappFrame

 Startseite = "main.htm"     // Dateiname (und Pfad) der Startseite

      Titel = "VSG Wipperfürth - Verein für Sport und Gesundheit";// Name/Titel Deiner Website

//  StatZeile = "";             // Standard-Statuszeilentext, falls leer, wie Titel

// prefixHTML = "";             // Kopfzeile ueber dem Menue

// suffixHTML = "<CENTER><HR>Dies ist das <B>JS-Men&uuml;</B>. Sieh Dir die <A HREF=\"doku/doku.htm\" TARGET=\"'+ZielFrame+'\"><B>Dokumentation</B></A> an, um selbst so ein Men&uuml; zu erstellen, oder besuche die <A HREF=\"http://rheinbreitbach.net/js-menue/\" TARGET=\"_top\"><B>JS-Men&uuml;-Homepage</B></A><BR><HR></CENTER>"; //Fusszeile unter dem Menue



document.write("<TITLE>"+Titel+"<\/TITLE>\n");



//Abkuerzungen fuer oft verwendete Ausdruecke



WH6="\" WIDTH=16 HEIGHT=16 ALIGN=TOP BORDER=0 ALT=\""

WH7="\" WIDTH=7 HEIGHT=12 ALIGN=TOP BORDER=0 ALT=\""

WH9=".gif\" WIDTH=19 HEIGHT=16 ALIGN=TOP BORDER=0 ALT=\""

WHA=".gif\" WIDTH=19 HEIGHT=16 ALIGN=TOP>"

BU="<IMG SRC=\""+BildURL

oMO="\" onMouseOver=\"window.status='"

rt="'; return true\" onMouseOut=\"window.status='"+Titel+"'; return true\">"

jsp="<A HREF=\"javascript:parent.a"



//Aufruf aus shop.htm

function start(){

  ladeDaten()

  maleMenu()

}



//Aufruf aus shop.htm

function neumalen(){

  maleMenu()

}



function maleMenu(){

//abkuerzung

 m=frames["menuFrame"].window.document;

//HTML schreiben

 m.open("text/html");

 m.write("<HTML>\n");

 m.write("<HEAD>\n");

 m.write("<LINK REL='stylesheet' TYPE='text/css' HREF='menu.css'>\n");

 m.write("</HEAD>\n");

 m.write("<BODY><BR>\n");

 m.write("<P><NOBR>\n");

 m.write("<A HREF='main.htm' TARGET='dataFrame' onMouseOver=\"window.status='");

 //zugriff auf Satz mit allen Menuepunkten

 //stat gibt es nur bei HVE, text ist der sichtbare Menuepunkt

m.write(mD[1].stat+rt+BU+"pics/leer.gif"+WH7+mD[1].stat+"\">&nbsp;"+mD[1].text+"</A><BR><BR>\n");



//Alle Menuepunkte ausser root

 maleVerz(mD[1].name,"");

 m.write("</NOBR></P>\n");

 m.write("</BODY>\n");

 m.write("</HTML>");

 m.close();

 window.defaultStatus=Titel;

}



function maleVerz(sE,zE){

  var nach=new Satz()

  //alle direkten Unterverzeichnisse von sE in "nach" schreiben

  for(idx=1;idx<=mD.laenge;idx++){

    //falls der betrachtete menuepunkt nicht root ist und sein Vorgaenger gleich dem uebergebenen sE ("aktuelles" root)

    if((mD[idx].typ!="root")&&(mD[idx].vor==sE)){

      nach.neu(mD[idx]) //trage diesen Punkt in "nach" ein

    }

  }

  var idx=1

  //alle direkten Unterverzeichnisse von sE werden durchlaufen

  while(idx<=nach.laenge){

    m.write(zE)

    // wenn der aktuelle Menuepunkt ein Link ist

    if(nach[idx].typ=='link'){

      lstat=nach[idx].text //Abkuerzung

      m.write(BU+"leer"+WHA)//Einrueckung

      m.write("<A HREF=\""+nach[idx].url+"\" TARGET=\""+ZielFrame)

      m.write(oMO+lstat+rt+BU+LinkBild)

      m.write(WH6+lstat+"\">&nbsp;"+lstat+"</A><BR>\n")

    }

    //wenn der aktuelle menuepunkt ein verzeichnis ist

    else{

      zweig=zE

      zicon="pics/menu_zu.gif"

      oicon="pics/menu_auf.gif"

      vza=VerzAuf

      vzz=VerzZu

      w1=(nach[idx].offen==0)?1:0 //nachsehen, ob verzeichnis schon offen

      //funktion aufzu(name, status) aufrufen (status is 1 oder o)

      m.write(jsp+"ufzu('"+nach[idx].name+"',"+w1+")"+oMO+((w1==1)?vza:vzz)+rt+BU+"leer"+WH9+vza+"\">"+BU)

      m.write(((w1==1)?zicon:oicon)+WH6+((w1==1)?vza:vzz)+"\">&nbsp;"+nach[idx].text+"</A><BR>\n")

      //falls verzeichnis noch zu

      if(w1==0){

        zweig+=BU+"leer"+WHA;maleVerz(nach[idx].name,zweig)//rekursiver Aufruf von maleVerz fuer die naechste Ebene

      }

    }

  idx++

  }

}



function maleKlappFrame(){

  k=frames["klappFrame"].window.document

  k.open("text/html")

  khgf=(KhgFarbe=="")?hgFarbe:KhgFarbe

  khgb=(KhgBild=="")?hgBild:KhgBild

  k.write("<HTML>\n<HE"+"AD>\n");

  if(CSS==""){

    k.write("<STYLE>\n<!--\nP{font-family:"+Schrift+"}\nA{text-decoration:none;\ncolor:"+LinkFarbe)

    k.write("}\nA:hover{color:"+aLinkFarbe+"}\nA:active{color:"+aLinkFarbe+"}\n-->\n</STYLE>\n")

  }

  else{

    k.write("<LINK REL=\"stylesheet\" TYPE\"text/css\" HREF=\""+CSS+"\">\n")

  }

  k.write("</HEAD>\n<BODY "+((khgf!="")?"BGCOLOR=\""+khgf+"\"":"")+((khgb!="")?"BACKGROUND=\""+khgb+"\"":""))

  k.write(" LINK=\""+LinkFarbe+"\" ALINK=\""+khgf+"\">\n<FONT FACE=\""+Schrift+"\" SIZE="+SchriftGr+" COLOR=\"")

  k.write(TextFarbe+"\"><P>\n"+(((SchriftSt==1)||(SchriftSt==3))?"<B>":"")+((SchriftSt>=2)?"<I>":""))

  k.write(" &nbsp; "+jsp+"llesaufzu(1)"+oMO+KlappAuf+rt+BU+"pics/menu_auf.gif"+WH6+KlappAuf+"\"> "+KlappAuf+"</A><BR>")

  k.write("\n &nbsp; "+jsp+"llesaufzu(0)"+oMO+KlappZu+rt+BU+"pics/menu_zu.gif"+WH6+KlappZu+"\"> "+KlappZu+"</A>\n")

  k.write(((SchriftSt>=2)?"</I>":"")+(((SchriftSt==1)||(SchriftSt==3))?"</B>":"")+"</FONT></P></BODY>\n</HTML>\n")

  k.close()

  window.defaultStatus=Titel

}



function aufzu(name,status){

  for(idx=1;idx<=mD.laenge;idx++){

    if(((mD[idx].typ=="root")||(mD[idx].typ=="verz"))&&(mD[idx].name==name)){

      vidx=idx

    }

  }



  if((Schliessen==1)&&(status==1)){

    if((AllesZu==1)||(mD[vidx].vor==mD[1].name)){

      for(idx=1;idx<=mD.laenge;idx++){

        mD[idx].offen=0

      }

    }

    //gibt raum fuer ziemlich grosse verzechnistiefe



    if((AllesZu==1)&&(mD[vidx].vor!=mD[1].name)){

      for(idx=1;idx<=mD.laenge;idx++){

        if(mD[idx].typ!="link"){

          if(mD[idx].name==mD[vidx].vor){

            mD[idx].offen=1

            if(mD[idx].vor!=mD[1].name){

              vvidx=idx;for(idx=1;idx<=mD.laenge;idx++){

                if(mD[idx].typ!="link"){

                  if(mD[idx].name==mD[vvidx].vor){

                    mD[idx].offen=1

                    if(mD[idx].vor!=mD[1].name){

                      vvvidx=idx;for(idx=1;idx<=mD.laenge;idx++){

                        if(mD[idx].typ!="link"){

                          if(mD[idx].name==mD[vvvidx].vor){

                            mD[idx].offen=1

                            if(mD[idx].vor!=mD[1].name){

                              vvvvidx=idx;

                              for(idx=1;idx<=mD.laenge;idx++){

                                if(mD[idx].typ!="link"){

                                  if(mD[idx].name==mD[vvvvidx].vor){

                                    mD[idx].offen=1

                                  }

                                  else{

                                    alert("zu tiefe Ordnerstruktur, AllesZu auf 0 setzen!");

                                    idx=mD.laenge

                                  }

                                }

                              }

                            }

                          }

                        }

                      }

                    }

                  }

                }

              }

            }

          }

        }

      }

    }

  }

  mD[vidx].offen=status

  eval(setTimeout("maleMenu()",50))

  if((mD[vidx].url!="")&&((status==1)||(VerzZuLink==1))){

    frames[ZielFrame].location.href=mD[vidx].url

  }

}



function allesaufzu(status){

  for(idx=1;idx<mD.laenge;idx++){

    mD[idx].offen=status

  }

  maleMenu()

}



function neu(object){

  this.laenge++

  this[this.laenge]=object

}



function HVE(name,text,stat){

  this.name=name

  this.text=text

  this.typ="root"

  this.stat=stat

  return this

}



function VE(name,vor,text,url){

  this.name=name

  this.vor=vor

  this.text=text

  this.url=url

  this.typ="verz"

  this.offen=0

  return this

}



function LE(vor,text,url){ //gebraucht in md.neu

  this.vor=vor   // "a1"

  this.text=text // "Rock"

  this.url=url   // "rubrik.xml"

  this.typ="link"

  return this

}



function datum(){

  mn=new Array("Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember")

  d=new Date(frames[ZielFrame].document.lastModified)

  m=mn[d.getMonth()]

  t=d.getDate()

  jj=d.getYear()

  j=(jj>=2000)?jj:((jj<80)?jj+2000:jj+1900)

  dat=(t+". "+m+" "+j)

}



// Satz hat EINE Laenge aber beliebig viele neu-Objekte, die entweder HVE, VE oder LE sind (s.u.)

function Satz(){

  this.laenge=0

  this.neu=neu

  return this

}



function ladeDaten(){

 mD=new Satz()

 mD.neu(new HVE("root","Home","Home"))

 mD.neu(new VE("Trainingszeiten","root","Trainingszeiten","trainingszeiten.htm"))

  mD.neu(new LE("Trainingszeiten","Bosseln","bosseln.htm"))

  mD.neu(new LE("Trainingszeiten","Tischtennis","tischtennis.htm"))

  mD.neu(new LE("Trainingszeiten","Gymnastik","gymnastik.htm"))

  mD.neu(new LE("Trainingszeiten","Schwimmen","schwimmen.htm"))

  mD.neu(new LE("Trainingszeiten","Faustball","faustball.htm"))

 // mD.neu(new LE("Trainingszeiten","Sitzball","sitzball.htm"))

  mD.neu(new LE("Trainingszeiten","Kinder & Jugendgruppe","kinder.htm"))

  mD.neu(new LE("Trainingszeiten","Gruppe Lindlar","lindlar.htm"))



  mD.neu(new VE("Neues und Nachrichten","root","Neues und Nachrichten","veranstaltungen.php"))



   // mD.neu(new LE("Veranstaltungen","Kalender","veranstaltungen.php"))







  mD.neu(new VE("Vorstand + Übungsleiter","root","Vorstand + Übungsleiter","personen.php"))



    mD.neu(new LE("Vorstand + Übungsleiter","Vorstand","vorstand.php"))



    mD.neu(new LE("Vorstand + Übungsleiter","Übungsleiter","uebungsleiter.php"))







 /* mD.neu(new VE("Übungsleiter","root","Übungsleiter","veranstaltungen.htm"))*/



  mD.neu(new VE("Tischtennis","root","Tischtennis",""))



    mD.neu(new LE("Tischtennis","Aktuelles","tt_aktuelles.php"))

        mD.neu(new LE("Tischtennis","Mannschaft 1","tt_mannschaft1.html"))

          mD.neu(new LE("Tischtennis","Mannschaft 2","tt_mannschaft2.html"))

        mD.neu(new LE("Tischtennis","Spielplan","tt_spielplan.php"))

        mD.neu(new LE("Tischtennis","Ergebnisse","tt_ergebnisse.php"))

 /*         mD.neu(new LE("Tischtennis","Tabelle","tt_tabelle.php"))



mD.neu(new VE("Tischtennis","root","Tischtennis spezial","tischtennis.htm"))



          mD.neu(new LE("Tischtennis","Turniere","turniere.htm"))

*/



}
