/*-----------------------------------------------------

 File:		menu.js
 Author:	Ulrike van Leeuwen <ulrike.vanleeuwen@gestalten.de>
 			Frank Rakow <frank.rakow@gestalten.de>
 Version:	1.0.0
 Copyright:	2002 gestaltende gmbh
  
 ----------------------------------------------------*/

// Globaler Counter
var menupkt = 0;

/*======================================================================*\
	Klasse: 		hauptpkt
	Beschreibung:	Objekt fuer Menue-Hauptpunkte
\*======================================================================*/

/*======================================================================*\
    Funktion: 	hauptpkt()
    Zweck:  	Konstruktor der Klasse
    Parameter:	
    	src 	Image inaktiv
    	dest	Image aktiv
    	ref		Link auf Seite
\*======================================================================*/

function hauptpkt(src,dest,ref,stat)
	{
	this.upkt	= new Array(); 	// Array zur Aufnahme Unterpunkte Objekte
	this.pkt	= menupkt++;	// ID des Hauptpunktes
	this.src	= src;			// URL fuer Abbildung Normal Darstellung
	this.dest	= dest;			// URL fuer Abbildung Aktiv Darstellung und Rollover
	this.ref	= ref;			// URL fuer Link
	this.status	= stat			// Statuszeilentext
	}


/*======================================================================*\
    Funktion: 	hauptpkt.unterpunkt()
    Zweck:  	Hinzufuegen eines neuen Unterpunktes
    Parameter:	
    	text 	Text zur Ausgabe
    	ref		Link auf Seite
\*======================================================================*/

hauptpkt.prototype.unterpunkt=function(text,ref)
	{
	this.upkt[this.upkt.length] = new unterpkt( text,ref ); 
	};


/*======================================================================*\
    Funktion: 	hauptpkt.ausgabe()
    Zweck:  	Ausgabe des Objektes und evtl. vorhandener Unterpunkte
    Parameter:	
    	out 			Reference auf 'document'
    	showsubmenu		ID des aktiven Hauptpunktes
\*======================================================================*/

hauptpkt.prototype.ausgabe=function( out, showsubmenu )
	{
	if (showsubmenu) {

	// Unterpunkte ausgeben, da Hauptpunkt aktiv
	out.write('<td><a  href="javascript:top.nojump();" onClick="top.navi_anzeigen(document,'+this.pkt+');return true;" onMouseOver="top.UP_displayStatusMsg(document,\''+this.status+'\');return document.UP_returnValue" onMouseOut="top.UP_resetStatusMsg(document);return document.UP_returnValue;" class="none"><img name="menu_'+this.pkt+'" src="'+this.dest+'" width="140" height="19" border="0"></a></td>');

		// Gibt es Unterpunkte
		if (this.upkt.length>0) {
			out.write("</tr>");
			// dann Unterpunkte ausgeben

			for (var i=0; i<this.upkt.length; i++) {
				out.write('<tr bgcolor="#FFFFFF"><td></td>');
				this.upkt[i].ausgabe(out);
				out.write("</tr>");
				}
			}

		// Ist Link vorhanden dann Seite im main Frame anzeigen
		if ( this.ref!="" ) {
			top.main.location=this.ref;
			}

		}
	else {

		// keine Unterpunkte ausgeben, da Hauptpunkt nicht aktiv
		out.write('<td><a href="javascript:top.nojump();" onClick="top.navi_anzeigen(document,'+this.pkt+');return true;"  onMouseOver="top.UP_swapImage(document,'+"'menu_"+this.pkt+"','','"+this.dest+"'"+',1);top.UP_displayStatusMsg(document,\''+this.status+'\');return document.UP_returnValue" onMouseOut="top.UP_swapImgRestore(document);top.UP_resetStatusMsg(document);return document.UP_returnValue;"  class="none"><img name="menu_'+this.pkt+'" src="'+this.src+'" width="140" height="19" border="0"></a></td>');
		out.write("</tr>");
		}
	};


/*======================================================================*\
	Klasse: 		unterpkt
	Beschreibung:	Objekt fuer Menue-Hauptpunkte
\*======================================================================*/

/*======================================================================*\
    Funktion: 	hauptpkt()
    Zweck:  	Konstruktor der Klasse
    Parameter:	
    	text 	Text zur Ausgabe
    	ref		Link auf Seite
\*======================================================================*/

function unterpkt(text,ref)
	{
	this.text=text;
	this.ref=ref;
	}


/*======================================================================*\
    Funktion: 	unterpkt.ausgabe()
    Zweck:  	Ausgabe des Unterpunktes
    Parameter:	
    	out 			Reference auf 'document'
\*======================================================================*/

unterpkt.prototype.ausgabe=function(out)
	{
	out.write('<td ><a href="'+this.ref+'" target="main" class="navi" onMouseOver="top.UP_displayStatusMsg(document,\''+this.text+'\');return document.UP_returnValue" onMouseOut="top.UP_resetStatusMsg(document);return document.UP_returnValue;">'+this.text+'</a></td>');
	};


/*======================================================================*\
    Funktion: 	nojump()
    Zweck:  	Link verhindern
\*======================================================================*/
function nojump()
	{
	//return false;
	}

/*======================================================================*\
	Generieren der Menuestruktur
\*======================================================================*/
	
var menu = new Array();

menu[0] = new hauptpkt("/0_menu/art/menu_01.gif","/0_menu/art/menu_01_f2.gif","/1_home/p_home.html","Startseite");

menu[1] = new hauptpkt("/0_menu/art/menu_02.gif","/0_menu/art/menu_02_f2.gif","","Dienstleistungen");
menu[1].unterpunkt("Zellstoff und Sekundär- Rohstoff","/2_dienstleistungen/2_1_zellstoff/pt_zellstoff.html");

menu[2] = new hauptpkt("/0_menu/art/menu_03.gif","/0_menu/art/menu_03_f2.gif","","Kontakt");
menu[2].unterpunkt("Email","/3_kontakt/p_kontakt.html");
menu[2].unterpunkt("Impressum","/3_kontakt/p_impressum.html");
menu[2].unterpunkt("Anfahrt","/3_kontakt/p_anfahrt.html");

// Kontakt ist ID = 2
var kontakt=2;
