/*
Navigationsleiste
*/

var eintraege              = new Array()
var bildname               = "Bild"

var body_bgcolor           = "0c69c0"
var body_background        = "Bilder/Hintergrund.gif"
var body_text              = "ffffff"
var body_link              = "ffffff"
var body_vlink             = "ffffff"
var body_alink             = "ffff00"
var body_hover             = "ffff00"

var a_underline            = false

var menue_vor              = ""
var menue_nach             = ""
var menuepunkt_vor         = ""
var menuepunkt_nach        = ""

var menue_titel            = "<table width=\"100%\" cellpadding=\"2\" cellspacing=\"0\" border=\"0\" bgcolor=\"#0c69c0\"><tr align=\"center\"><td><b><font color=\"#ffffff\"><img src=\"Bilder/Logo.gif\"></font></b></td></tr></table>"
var menue_style            = "font-family: Arial, Helvetica, sans-serif;"

var rand                   = 10

var bild_leer              = "Bilder/Leer.gif"
var bild_verzweigung       = "Bilder/Verzweigung.gif"
var bild_menue_offen       = "Bilder/Offen.gif"
var bild_menue_geschlossen = "Bilder/Geschlossen.gif"
var bild_breite            = 14
var bild_hoehe             = 14

var frame_name             = "menuebaum"

var rebuild                = true

var extra                  = true

var text_baum_auf          = ""
var text_baum_zu           = ""
var baum_aufgeklappt       = true

var extra_vor              = ""
var extra_nach             = ""

var exclusiv               = false


function set_nodes()
{
	var i

	for(i = 0; i < (eintraege.length - 1); i++)
		if(eintraege[i + 1].level > eintraege[i].level)
		{
			eintraege[i].node	=  true
			eintraege[i].open	=  false
		}
}

function neuer_menuepunkt(level, name, url, target, desc, image, image_open)
{
	this.level		= level
	this.name		= name
	this.url		= url
	this.target		= target
	this.node		= false
	this.open		= false
	this.description	= desc
	this.image		= image
	this.image_open		= image_open
}

function menuepunkt(level, name, url, target, desc, image, image_open)
{
	var pos = eintraege.length

	if(level < 1)
	{
		alert("Menuepunkte ab 1 anlegen!")
		return
	}

	if(arguments.length < 2)
	{
		alert("Mindestens Argument 1 und 2 angeben!")
		return
	}

	eintraege[pos]	= new neuer_menuepunkt(level,
						name,
						(arguments.length > 2) ? url : null,
						(arguments.length > 3) ? target : null,
						(arguments.length > 4) ? desc : null,
						(arguments.length > 5) ? image : null,
						(arguments.length > 6) ? image_open : null)
}

function submenue(nr)
{
	function close_submenues(nr)
	{
		var i
		for(i = 0; i < eintraege.length; i++)
			if((i != nr) && eintraege[i].node)
				eintraege[i].open	= false
	}

	function open_submenues(nr)
	{
		function open_super_level(nr, lvl)
		{
			if((nr == 1) || (lvl < 1))
				return

			var i
			for(i = nr - 1; i >= 0; i--)
			{
				if((eintraege[i].level == lvl) && eintraege[i].node)
				{
					eintraege[i].open	= true
					open_super_level(i, lvl - 1)
					return
				}
			}
			return
		}

		open_super_level(nr, eintraege[nr].level - 1)
	}

	eintraege[nr].open	= !eintraege[nr].open
	if((eintraege[nr].target != null) && (eintraege[nr].url != null))
		frames[eintraege[nr].target].location.href	= eintraege[nr].url
	if(eintraege[nr].open && exclusiv)
	{
		close_submenues(nr)
		open_submenues(nr)
	}
	write_menue()
}

function expand()
{
	var i

	for(i = 0; i < eintraege.length; i++)
		if(eintraege[i].node)
			eintraege[i].open	= true
	write_menue()
}

function collapse()
{
	var i

	for(i = 0; i < eintraege.length; i++)
		if(eintraege[i].node)
			eintraege[i].open	= false
	write_menue()
}

function show(comment)
{
	status = comment
}

function hide()
{
	status = ""
}

function ausgabe(nr)
{
	with(self[frame_name].document)
	{
		var i
		var tag_a_anfang = ""
		var tag_a_ende = ""
		var tags_pre = ""
		var tags_post = ""
		var tag_img = ""
		var titel = ""
		var bild = ""

		write("<table cellspacing=\"0\" cellpadding=\"0\" border=\"0\">\n<tr align=\"left\" valign=\"center\">\n<td>")

		if(eintraege[nr].level > 1)
			write("<img src=\"" + bild_leer + "\" width=\"" + String(bild_breite * (eintraege[nr].level - 1)) + "\" height=\"" + String(bild_hoehe) + "\" border=\"0\" alt=\"\">")

		tag_a_ende = "</a>"

		if(eintraege[nr].node)
		{
			titel = eintraege[nr].description ? eintraege[nr].description : eintraege[nr].name
			bild = eintraege[nr].open ?
					(eintraege[nr].image_open ? eintraege[nr].image_open : bild_menue_offen) :
					(eintraege[nr].image ? eintraege[nr].image : bild_menue_geschlossen)

			tags_pre = menue_vor
			tags_post = menue_nach
			tag_a_anfang = "<a " +
						"href=\"javascript:parent.submenue(" + String(nr) + ")\" " +
						"onMouseOver=\"parent.show('" + titel + "'); return true\" " +
						"onMouseOut=\"parent.hide()\" " +
						"title=\"" + titel + "\"" +
						">"

		}
		else
		{
			titel = eintraege[nr].description ? eintraege[nr].description : eintraege[nr].name
			bild = eintraege[nr].image ? eintraege[nr].image : bild_verzweigung

			tags_pre = menuepunkt_vor
			tags_post = menuepunkt_nach
			tag_a_anfang = "<a " +
						"href=\"" + eintraege[nr].url + "\" " +
						"onMouseOver=\"parent.show('" + titel + "'); return true\" " +
						"onMouseOut=\"parent.hide()\" " +
						(eintraege[nr].target ? ("target=\"" + eintraege[nr].target + "\" ") : "") +
						"title=\"" + titel + "\"" +
						">"

		}

		tag_img = "<IMG " +
				"src=\"" + bild + "\" " +
				"width=\"" + String(bild_breite) + "\" " +
				"height=\"" + String(bild_hoehe) + "\" " +
				"border=\"0\" " +
				"name=\"" + bildname + String(nr) + "\" " +
				"alt=\"" + titel + "\"" +
				">"

		write(tag_a_anfang + tag_img + tag_a_ende)
		write("</td>\n<td>")
		write(tag_a_anfang + tags_pre + eintraege[nr].name + tags_post + tag_a_ende)

		writeln("</td>\n</tr>\n</table>")

	}
}

function ausgabe_eintraege(lvl, start)
{
	var i

	with(self[frame_name].document)
	{
		for(i = start; i < eintraege.length; i++)
		{
			if(eintraege[i].level < lvl)
				return
			if(eintraege[i].level == lvl)
			{
				ausgabe(i)
				if(eintraege[i].node)
					if(eintraege[i].open)
						ausgabe_eintraege(lvl + 1, i + 1)
			}
		}
	}
}

function write_menue()
{
	with(self[frame_name].document)
	{
		open("text/html", "replace")

		writeln("<html>\n<head>\n<title>Navigationsleiste</title>")
		writeln("<meta name=\"robots\" content=\"index\">")
		writeln("<meta name=\"robots\" content=\"follow\">")
		writeln("<meta http-equiv=\"content-type\" content=\"text/html; charset=iso-8859-1\">")
		writeln("<link rel=\"stylesheet\" media=\"all\" type=\"text/css\" href=\"Formate.css\">")
		writeln("<style type=\"text/css\">\n<!--")
		if(!a_underline)
			writeln("A {text-decoration: none;}")
		writeln("a:hover {color: #" + body_hover + ";}")
		if(menue_style != "")
			writeln("body, a, p, td, h1, h2, h3, h4, h5, h6 {" + menue_style + "}")
		writeln("//-->\n</style>")
		writeln("</head>")

		writeln("<body bgcolor=\"#" + body_bgcolor + "\" text=\"#" + body_text +
				"\" link=\"#" + body_link + "\" alink=\"#" + body_alink +
				"\" vlink=\"#" + body_vlink + "\" leftmargin=\"" + rand +
				"\" topmargin=\"" + rand + "\" marginwidth=\"" + rand +
				"\" marginheight=\"" + rand + "\"" +
				(((body_background != "") && (body_background != null)) ? (" background=\"" + body_background + "\"") : "" ) + ">")
		if(menue_titel != "")
			writeln(menue_titel)
		write("<p>")
		ausgabe_eintraege(1, 0)
		writeln("</p>")
		if(extra)
		{
			write("<p align=\"center\">" + extra_vor)
			if(!exclusiv)
			write("<nobr><a href=\"javascript:parent.expand()\" title=\"" + text_baum_auf + "\">" + text_baum_auf + "</a><wbr></nobr>")
			write("<nobr><a href=\"javascript:parent.collapse()\" title=\"" + text_baum_zu + "\">" + text_baum_zu + "</a><wbr></nobr>")
			writeln(extra_nach + "</p>")
		}
		writeln("</body>")
		writeln("</html>")

		close()
	}

}

function menue()
{
	set_nodes()

	write_menue()

	if(baum_aufgeklappt)
	  parent.expand()
}

function oeffne_menue_pfad(ids)
{
	set_nodes()

	var sarr = ids.split(",")
	var i
	var nr

	for(i = 0; i < sarr.length; i++)
	{
		nr = parseInt(sarr[i])
		if(!isNaN(nr))
			if(eintraege[nr].node)
				eintraege[nr].open = true
	}

	write_menue()
}

