/* ------------------------------------------------------------------------------------- */
/*
<! JS-Menue, dynamisches strukturiertes Menue-System auf JavaScript-Basis >
<! © 1998-2000 Ansgar Federhen/Rhein@Net (deutsch) + Colin Tucker (engl.) >
<! Script darf bei Uebernahme des Copyrightvermerks frei genutzt werden.  >
<! ©-Hinweis nicht loeschen! Scriptverwendung wird sonst lizenzpflichtig! >
<! http://rheinbreitbach.net/js-menue/ e-mail:js-menue@rheinbreitbach.net >              */
/* ------------------------------------------------------------------------------------- */

function ladeDaten(){
    mD=new Satz()

// Menue-Struktur-Definitionen: Ab hier wird die Menue-Struktur definiert. Syntax/Schreibweise:
// Hauptverzeichnis-Eintrag: mD.neu(new HVE("<NAME>","<TEXT>","<ICON>","<STATUSTEXT>"))
// Verzeichnis-Eintrag: mD.neu(new VE("<NAME>","<UEBERGEORDNETER NAME>","<TEXT>","<URL>","<ICON ZU>","<ICON OFFEN>","<STATUSTEXT>"))
// Link-Eintrag: mD.neu(new LE("<UEBERGEORDNETER NAME>","<TEXT>","<URL>","<ZIEL>","<ICON>","<STATUSTEXT>"))
// Weitere Infos in der JS-Menue-Dokumentation.

mD.neu(new HVE("root","","leer.gif","Homepage von musikom"))

  mD.neu(new VE("home","root","HOME","start/start.htm","","",""))
  
  mD.neu(new VE("ofen","root","OFENSTUDIO","ofenstudio/ofenstudio.htm","","",""))
       mD.neu(new LE("ofen","Kamin-Öfen","ofenstudio/kamin.htm","","pfr0.gif",""))
       mD.neu(new LE("ofen","Pellet-Öfen","ofenstudio/pellet.htm","","pfr0.gif",""))       
       mD.neu(new LE("ofen","Aqua-Öfen","ofenstudio/aqua.htm","","pfr0.gif",""))       
       mD.neu(new LE("ofen","Technik","ofenstudio/technik.htm","","pfr0.gif",""))
        
  mD.neu(new VE("kamine","root","KAMINE","kamine/kamine.htm","","",""))

    mD.neu(new VE("aussen","kamine","Aussen","kamine/aussen/aussen.htm","","",""))
      mD.neu(new LE("aussen","Lüftung","kamine/aussen/lueftung.htm","","pfr0.gif",""))
      mD.neu(new LE("aussen","Brennwert","kamine/aussen/brennwert.htm","","pfr0.gif",""))
      mD.neu(new LE("aussen","Öl-Gas","kamine/aussen/oelgas.htm","","pfr0.gif",""))
      mD.neu(new LE("aussen","Holz","kamine/aussen/holz.htm","","pfr0.gif",""))
      mD.neu(new LE("aussen","Sonder","kamine/aussen/sonder.htm","","pfr0.gif",""))

    mD.neu(new VE("innen","kamine","Innen","kamine/innen/innen.htm","","",""))
      mD.neu(new LE("innen","Lüftung","kamine/innen/lueftung.htm","","pfr0.gif",""))
      mD.neu(new LE("innen","Küchen","kamine/innen/kuechen.htm","","pfr0.gif",""))
      mD.neu(new LE("innen","Brennwert","kamine/innen/brennwert.htm","","pfr0.gif",""))
      mD.neu(new LE("innen","Öl-Gas","kamine/innen/oelgas.htm","","pfr0.gif",""))
      mD.neu(new LE("innen","Holz","kamine/innen/holz.htm","","pfr0.gif",""))
      mD.neu(new LE("innen","Sonder","kamine/innen/sonder.htm","","pfr0.gif",""))

  mD.neu(new VE("planung","root","PLANUNG","planung/planung.htm","","",""))
      mD.neu(new LE("planung","Eingabeplanung","planung/eingabe.htm","","pfr0.gif",""))
      mD.neu(new LE("planung","Ausschreibung","planung/ausschreibung.htm","","pfr0.gif",""))
      mD.neu(new LE("planung","Querschnitt-Berechnung","planung/berechnung.htm","","pfr0.gif",""))

  mD.neu(new VE("geruestbau","root","GERÜSTBAU","geruestbau/geruestbau.htm","","",""))
      mD.neu(new LE("geruestbau","Hebebühne","geruestbau/hebebuehne/hebebuehne.htm","","pfr0.gif",""))

  mD.neu(new VE("referenzen","root","REFERENZEN","referenzen/referenzen.htm","","",""))
      mD.neu(new LE("referenzen","Bäckereien","referenzen/backen/backen.htm","","pfr0.gif",""))
      mD.neu(new LE("referenzen","Hotels","referenzen/hotel/hotel.htm","","pfr0.gif",""))
      mD.neu(new LE("referenzen","Kommunen","referenzen/komune/komune.htm","","pfr0.gif",""))
      mD.neu(new LE("referenzen","Spezial","referenzen/spezial/spezial.htm","","pfr0.gif",""))

  mD.neu(new VE("firma","root","FIRMA","firma/firma.htm","","",""))

  mD.neu(new VE("kontakt","root","KONTAKT","kontakt/kontakt.htm","","",""))

  mD.neu(new VE("impressum","root","IMPRESSUM","impressum/impressum.htm","","",""))

}

// Menue-Layout-Angaben:
// =====================
Layout = "";                          // reserviert
hgStil = "0";                         // Hintergrundstil: 0=hell bzw. 1=dunkel
hgFarbe = "";                  // Hintergrundfarbe des Menues
hgBild = "_images/back-m.jpg";                          // Hintergrundbild des Menues
KhgFarbe = "";                        // Hintergrundfarbe des klappFrame; falls leer, wie Menue
KhgBild = "";                         // Hintergrundbild des klappFrame; falls leer, wie Menue
TextFarbe =  "#000000";               // Farbe von Text ohne hinterlegten Link
LinkFarbe =  "#000000";               // Farbe von Text mit hinterlegtem Link
aLinkFarbe = "#FF0000";               // Farbe des aktiven TextLinks (auch hover-Effekt ab IE 4.x)
bLinkFarbe = "#000000";               // Farbe der besuchten TextLinks
Menubreite = "200"                    // Breite des menuFrames in Pixel
ZielFrame = "seiteFrame";             // Name des Frames (nicht der Datei!), in den standardmaessig alle Links geladen werden
BildURL = "_images/";                 // Pfad zu Icons von JS-Menue
LinkBild = "globus.gif";              // Dateiname des standardmaessig benutzten Icons fuer Links
Schrift = "Verdana";                  // die fuer das Menue benutzte(n) Schriftart(en)
SchriftGr = "1";                      // Schriftgroesse (1 oder 2)
SchriftSt = "1";                      // Schriftstil: 0=normal, 1=fett, 2=kursiv, 3=fett/kursiv
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)
KlapFrame = "";                      // klappFrame anzeigen? (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 = "alles auf";                // Text, Mouseover- und Statuszeilentext im klappFrame
KlappZu = "alles zu";                    // Text, Mouseover- und Statuszeilentext im klappFrame
Startseite = "start/start.htm";       // Dateiname (und Pfad) der Startseite
CSS = "";                             // Dateiname (und Pfad) der StyleSheet-Datei
Titel = "a.s.s.Kaminbau";             // Name/Titel Deiner Website
StatZeile = "";                       // Standard-Statuszeilentext, falls leer, wie Titel
StatURL = "0";                        // Anzeige der Link-URL(1) oder des Link-Textes(0) bei leerem Link-Statustext
prefixHTML = "";
suffixHTML = "";

// Ab hier brauchst Du normalerweise nichts mehr zu aendern.
document.write("<TITLE>"+Titel+"<\/TITLE>\n");StatZeile=(StatZeile=="")?Titel:StatZeile

// FrameSet-Definition A: Fuer Browser mit aktivem JavaScript
// document.write('<FRAMESET FRAMEBORDER=0 FRAMESPACING=0 BORDER=0 onLoad="start()" onResize="neumalen()" COLS="'+Menubreite+',*">')
// if(KlapFrame==1){document.write('<FRAMESET FRAMEBORDER=0 FRAMESPACING=0 BORDER=0 ROWS="*,50">')}
// document.write('<FRAME NAME="menuFrame" SRC="navi.htm" MARGINWIDTH="0" MARGINHEIGHT="0" SCROLLING="Auto">')
// if(KlapFrame==1){document.write('<FRAME NAME="klappFrame" SRC="navi.htm" MARGINWIDTH="0" MARGINHEIGHT="0" SCROLLING="No">')}
// if(KlapFrame==1){document.write('</FRAMESET>')}
// document.write('<FRAME NAME="'+ZielFrame+'" SRC="'+(location.search?location.search.substring(1):Startseite)+'" MARGINWIDTH="8" MARGINHEIGHT="8" SCROLLING="Auto">')
// document.write('</FRAMESET>')

// FrameSet-Definition A: Fuer Browser mit aktivem JavaScript
document.write('<FRAMESET FRAMEBORDER=0 FRAMESPACING=0 BORDER=0 onLoad="start()" onResize="neumalen()" ROWS="100,*">')
document.write('<FRAME NAME="kopfFrame" SRC="kopf.htm" MARGINWIDTH="0" MARGINHEIGHT="0" SCROLLING="No">')
document.write('<FRAMESET FRAMEBORDER=0 FRAMESPACING=0 BORDER=0 COLS="'+Menubreite+',*">')
if(KlapFrame==1){document.write('<FRAMESET FRAMEBORDER=0 FRAMESPACING=0 BORDER=0 ROWS="*,40">')}
document.write('<FRAME NAME="menuFrame" SRC="nojsmenu.htm" MARGINWIDTH="0" MARGINHEIGHT="0" SCROLLING="Auto">')
if(KlapFrame==1){document.write('<FRAME NAME="klappFrame" SRC="leer.htm" MARGINWIDTH="0" MARGINHEIGHT="0" SCROLLING="No">')}
if(KlapFrame==1){document.write('</FRAMESET>')}
document.write('<FRAME NAME="'+ZielFrame+'" SRC="'+(location.search?location.search.substring(1):Startseite)+'" MARGINWIDTH="8" MARGINHEIGHT="8" SCROLLING="Auto">')
document.write('</FRAMESET>')
document.write('</FRAMESET>')


function start(){
ladeDaten()
maleMenu()
if(KlapFrame==1){maleKlappFrame()}}

function neumalen(){
maleMenu()
if(KlapFrame==1){maleKlappFrame()}}

WH6="\" WIDTH=16 HEIGHT=16 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='"
LHg=Layout+hgStil
rt="'; return true\" onMouseOut=\"window.status='"+StatZeile+"'; return true\">"
jsp="<A HREF=\"javascript:parent.a"

function maleMenu(){
m=frames["menuFrame"].window.document
m.open("text/html")
m.write("<HTML>\n<HE"+"AD>\n<!-- \nvon JS-Menue V1.4.1 dynamisch erstellter HTML-Code\n© 2000 Ansgar Federhen/ Rhei")
m.write("n@Net\nWeb: htt://rheinbreitbach.net/js-menue/\nE-Mail: js-menue@rheinbreitbach.net\n//-->\n");if(CSS==""){
m.write("<STYLE>\n<!--\nbody,p,nobr,b,i,a,font {font-family:"+Schrift+"}\nA{text-decoration:none;color:" + LinkFarbe+";font-size:9px;")
m.write("}\nA:hover{color:"+aLinkFarbe+"}\nA:active{color:"+aLinkFarbe+"}\n")
m.write(((bLinkFarbe!="")?"A:visited{color:"+bLinkFarbe+"}\n":"")+"//-->\n</STYLE>\n")}else{
m.write("<LINK REL=\"stylesheet\" TYPE=\"text/css\" HREF=\""+CSS+"\">\n")}
m.write("</HEAD>\n<BODY "+((hgFarbe!="")?"BGCOLOR=\""+hgFarbe+"\" ":"")+((hgBild!="")?"BACKGROUND=\""+hgBild+"\" ":""))
m.write("LINK=\""+LinkFarbe+"\" ALINK=\""+aLinkFarbe+"\""+((bLinkFarbe!="")?" VLINK=\""+bLinkFarbe+"\"":""))
m.write(">\n<FONT FACE=\""+Schrift+"\" SIZE="+SchriftGr+" COLOR=\""+TextFarbe+"\">\n"+prefixHTML+"<P><NOBR>")
m.write(((SchriftSt==1)||(SchriftSt==3)?"<B>":"")+((SchriftSt>=2)?"<I>":"")+"\n<A HREF=\""+Startseite+"\" TARGET=\""+ZielFrame+oMO)
m.write(mD[1].stat+rt+BU+((mD[1].icon=="")?"globus-"+LHg+".gif":mD[1].icon)+WH6+mD[1].stat+"\">&nbsp;<B>"+mD[1].text+"</B></A><BR>\n")
maleVerz(mD[1].name,"")
m.write(((SchriftSt>=2)?"</I>":"")+(((SchriftSt==1)||(SchriftSt==3))?"</B>":"")+"</NOBR>\n"+suffixHTML+"\n</P></FONT>\n</BODY>\n</HTML>")
m.close()
window.defaultStatus=StatZeile}

function maleVerz(sE,zE){
var nach=new Satz()
for(idx=1;idx<=mD.laenge;idx++){if((mD[idx].typ!="root")&&(mD[idx].vor==sE)){nach.neu(mD[idx])}}
var idx=1
while(idx<=nach.laenge){
    m.write(zE)
    if(nach[idx].typ=='link'){
        w1=(StatURL==0)?nach[idx].text:nach[idx].url
        m.write((nach[idx].icon=="leer.gif")?BU+((idx!=nach.laenge)?"stamm-":"end")+LHg+WHA:BU+((idx!=nach.laenge)?"zw":"zwe")+LHg+WHA)
        lstat=(nach[idx].lstat=="")?w1:nach[idx].lstat
        m.write("<A HREF=\""+nach[idx].url+"\" TARGET=\""+((nach[idx].ziel=="")?ZielFrame:nach[idx].ziel))
        m.write(oMO+lstat+rt+BU+((nach[idx].icon=="")?LinkBild:nach[idx].icon))
        m.write(WH6+((nach[idx].lstat=="")?nach[idx].url:nach[idx].lstat)+"\">&nbsp;"+nach[idx].text+"</A><BR>\n")}
    else{
        zweig=zE
        zicon=(nach[idx].zicon=="")?"vzzu-"+LHg+".gif":nach[idx].zicon
        oicon=(nach[idx].oicon=="")?"vzauf-"+LHg+".gif":nach[idx].oicon
        vza=(nach[idx].vstat=="")?VerzAuf:nach[idx].vstat
        vzz=(nach[idx].vstat=="")?VerzZu:nach[idx].vstat
        w1=(nach[idx].offen==0)?1:0
        w2=(w1==1)?"zwauf-":"zwzu-"
        w2+=(idx==nach.laenge)?"e":""
        m.write(jsp+"ufzu('"+nach[idx].name+"',"+w1+")"+oMO+((w1==1)?vza:vzz)+rt+BU+w2+LHg+WH9+vza+"\">"+BU)
        m.write(((w1==1)?zicon:oicon)+WH6+((w1==1)?vza:vzz)+"\">&nbsp;"+nach[idx].text+"</A><BR>\n")
        if(w1==0){zweig+=BU+((idx==nach.laenge)?"leer":"stamm-"+LHg)+WHA;maleVerz(nach[idx].name,zweig)}}
    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+";font-size:9px;")
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+"leer.gif"+WH6+KlappAuf+"\"> "+KlappAuf+"</A><BR>")
k.write("\n &nbsp; "+jsp+"llesaufzu(0)"+oMO+KlappZu+rt+BU+"leer.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=StatZeile}

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}}
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 Satz(){
this.laenge=0
this.neu=neu
return this}

function neu(object){
this.laenge++
this[this.laenge]=object}

function HVE(name,text,icon,stat){
this.name=name
this.text=text
this.icon=icon
this.typ="root"
this.stat=stat
return this}

function VE(name,vor,text,url,zicon,oicon,vstat){
this.name=name
this.vor=vor
this.text=text
this.url=url
this.zicon=zicon
this.oicon=oicon
this.typ="verz"
this.offen=0
this.vstat=vstat
return this}

function LE(vor,text,url,ziel,icon,lstat){
this.vor=vor
this.text=text
this.url=url
this.ziel=ziel
this.icon=icon
this.typ="link"
this.lstat=lstat
return this}

function datum(){
mn=new Array("Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember")
d=new Date(frames["seiteFrame"].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)}





