function verifyCompatibleBrowser(){ 
    this.ver=navigator.appVersion 
    this.dom=document.getElementById?1:0 
    this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom)?1:0; 
    this.ie4=(document.all && !this.dom)?1:0; 
    this.ns5=(this.dom && parseInt(this.ver) >= 5) ?1:0; 
 
    this.ns4=(document.layers && !this.dom)?1:0; 
    this.bw=(this.ie5 || this.ie4 || this.ns4 || this.ns5) 
    return this 
} 
bw=new verifyCompatibleBrowser() 
 
 
var speed=50 
 
var loop, timer 
 
function ConstructObject(obj,nest){ 
    nest=(!nest) ? '':'document.'+nest+'.' 
    this.el=bw.dom?document.getElementById(obj):bw.ie4?document.all[obj]:bw.ns4?eval(nest+'document.'+obj):0; 
    this.css=bw.dom?document.getElementById(obj).style:bw.ie4?document.all[obj].style:bw.ns4?eval(nest+'document.'+obj):0; 
    this.scrollHeight=bw.ns4?this.css.document.height:this.el.offsetHeight 
    this.clipHeight=bw.ns4?this.css.clip.height:this.el.offsetHeight 
    this.up=MoveAreaUp;this.down=MoveAreaDown; 
    this.MoveArea=MoveArea; this.x; this.y; 
    this.obj = obj + "Object" 
    eval(this.obj + "=this") 
    return this 
} 
function MoveArea(x,y){ 
    this.x=x;this.y=y 
    this.css.left=this.x 
    this.css.top=this.y 
} 
 
function MoveAreaDown(move){ 
	if(this.y>-this.scrollHeight+objContainer.clipHeight){ 
    this.MoveArea(0,this.y-move) 
    if(loop) setTimeout(this.obj+".down("+move+")",speed) 
	} 
} 
function MoveAreaUp(move){ 
	if(this.y<0){ 
    this.MoveArea(0,this.y-move) 
    if(loop) setTimeout(this.obj+".up("+move+")",speed) 
	} 
} 
 
function PerformScroll(speed){ 
	if(initialised){ 
		loop=true; 
		if(speed>0) objScroller.down(speed) 
		else objScroller.up(speed) 
	} 
} 
 
function CeaseScroll(){ 
    loop=false 
    if(timer) clearTimeout(timer) 
} 
var initialised; 
function InitialiseScrollableArea(){ 
    objContainer=new ConstructObject('divContainer') 
    objScroller=new ConstructObject('divContent','divContainer') 
    objScroller.MoveArea(0,0) 
    objContainer.css.visibility='visible' 
    initialised=true; 
} 
function Sichtbar() {
document.getElementById("popup").style.visibility = 'visible';
document.getElementById("logo").style.visibility = 'visible';
document.getElementById("header").style.visibility = 'hidden';
document.getElementById("header_wrapper").style.visibility = 'hidden';
document.getElementById("content_wrapper").style.visibility = 'hidden';
document.getElementById("content").style.visibility = 'hidden';
document.getElementById("nummern").style.visibility = 'hidden';
document.getElementById("footer").style.visibility = 'hidden';
document.getElementById("unit1").style.visibility = 'hidden';
document.getElementById("unit2").style.visibility = 'hidden';
document.getElementById("deseo1").style.visibility = 'hidden';
document.getElementById("deseo2").style.visibility = 'hidden';
document.getElementById("bild").style.visibility = 'hidden';
}

function Unsichtbar() {
document.getElementById("popup").style.visibility = 'hidden';
document.getElementById("logo").style.visibility = 'hidden';
document.getElementById("oben").style.visibility = 'visible';
document.getElementById("navi").style.visibility = 'visible';
document.getElementById("subnavi").style.visibility = 'visible';
document.getElementById("projekt").style.visibility = 'visible';
document.getElementById("nummern").style.visibility = 'visible';
document.getElementById("footer").style.visibility = 'visible';
document.getElementById("unit1").style.visibility = 'visible';
document.getElementById("unit2").style.visibility = 'visible';
document.getElementById("deseo1").style.visibility = 'visible';
document.getElementById("deseo2").style.visibility = 'visible';
document.getElementById("bild").style.visibility = 'visible';
}
// ----------------------------------------------------------------------
// Globale Standardwerte setzen
//-----------------------------------------------------------------------
var browserID = "MZ";
if (navigator.userAgent.indexOf("MSIE") != -1)
	browserID = "IE";
	
var pageStatus = 0; // Overview	
var mediaZoom = 0;

var winWidth, winHeight;
var bgWidth, bgHeight;
var bgPath = "xvga";

if (screen.width > 1280) 
	bgPath = "uxga";
else if (screen.width > 1024)
	bgPath = "sxga";

// ----------------------------------------------------------------------
// Hintergrund an Fenstergröße anpassen
//-----------------------------------------------------------------------
function Get_ClientSize()
{
	var w, h;
	
	if (self.innerHeight)
	{
		w = self.innerWidth;
		h = self.innerHeight;
	}
	else if (document.documentElement && document.documentElement.clientHeight) // Explorer 6 Strict Mode
	{
		w = document.documentElement.clientWidth;
		h = document.documentElement.clientHeight;
	}
	else if (document.body) // other Explorers
	{
		w = document.body.clientWidth;
		h = document.body.clientHeight;
	}

	winWidth = w;
	winHeight = h;

	if (w > h * 1.78)
		h = w * 0.5625;
	else if (h > w * 0.5625)
		w = h * 1.78;

	bgWidth = w;
	bgHeight = h;
}

function Adjust_Layer()
{
	Get_ClientSize();
	document.getElementById("background0").style.width = winWidth + "px";
	document.getElementById("background0").style.height = winHeight + "px";
	document.getElementById("bg0").style.width = bgWidth + "px";
	document.getElementById("bg0").style.height = bgHeight + "px";
	
	if (bgSlides)
	{
		document.getElementById("background1").style.width = winWidth + "px";
		document.getElementById("background1").style.height = winHeight + "px";
		document.getElementById("bg1").style.width = bgWidth + "px";
		document.getElementById("bg1").style.height = bgHeight + "px";
	}
	
	var w, h;
	
	if (mediaZoom)
	{
		document.getElementById("fullsize").style.width = winWidth + "px";	
		document.getElementById("fullsize").style.height = winHeight + "px";
		fullWidth = winWidth - 336;
		if (pageStatus == 3)  // Slideshow
		{
			w = sldSize[2];
			h = sldSize[3];
		}
		else if (pageStatus == 5)	// Video
		{
			var data = mediaVid.split("|");
	
			w = data[3];
			h = data[4];
		}
		
		if (w > fullWidth)
		{
			h = Math.floor(h * fullWidth / w);
			w = fullWidth;
		}
		document.getElementById("fullmedia").style.width = w + "px";		
		document.getElementById("fullmedia").style.height = h + "px";		
		document.getElementById("fullinfo").style.height = h + "px";		
	}
}

window.onresize = Adjust_Layer; 

function Do_Click(e) 
{
	if (!e)
		e = window.event;
	if ((e.type && e.type == "contextmenu") || (e.button && e.button == 2) || (e.which && e.which == 3)) 
	{
    	return false;
	}
}

function Do_Drag()
{
	return false;
}

if (top.location == this.location)
{		
	document.onmousedown = Do_Click;
	document.oncontextmenu = Do_Click;
	document.ondragstart = Do_Drag;
}
// ----------------------------------------------------------------------
// Seite initialisieren
//-----------------------------------------------------------------------
function Init()
{
/*
	if (pageStatus == 1)
	{
		var h = document.getElementById("tbox").scrollHeight;
		if ((h < 256) && (h > 60))
		{
			document.getElementById("fulltext").style.height = (h + 8) + "px";
			document.getElementById("main").style.height = (h + 96) + "px";
		}
	}
*/
//	Init_Headlines();
	if (submenu.length)
		Init_Menu();
//	if (document.getElementById("selres"))
//		document.getElementById("selres").scrollIntoView(true);
	if (document.getElementById("results"))
		Init_Search();
	if (bgSlides > 0)
	{
		setInterval('Swap_Bg()', 10000);
	}
	else if (bgSlides < 0)
	{
		setTimeout('Swap_Bg()', 2000);
	}
}

// ----------------------------------------------------------------------
// Headlines durch Grafiktext ersetzen
//-----------------------------------------------------------------------
function Init_Headlines()
{
	var i, text;
	
	for (i=0; i<document.getElementsByTagName("h1").length; i++)
	{
		text = encodeURI(document.getElementsByTagName("h1")[i].innerHTML); //firstChild.data);
		text = text.replace(/&amp;/g, "__"); 
		document.getElementsByTagName("h1")[i].innerHTML = '<img src="../php/headline.php?text=' + text + '&style=h1">';
	}
	for (i=0; i<document.getElementsByTagName("h2").length; i++)
	{
		text = encodeURI(document.getElementsByTagName("h2")[i].innerHTML); //firstChild.data);
		text = text.replace(/&amp;/g, "__"); 
		document.getElementsByTagName("h2")[i].innerHTML = '<img src="../php/headline.php?text=' + text + '&style=h2">';
	}
	for (i=0; i<document.getElementsByTagName("h3").length; i++)
	{
		text = encodeURI(document.getElementsByTagName("h3")[i].innerHTML); //firstChild.data);
		text = text.replace(/&amp;/g, "__"); 
		document.getElementsByTagName("h3")[i].innerHTML = '<img src="../php/headline.php?text=' + text + '&style=h3">';
	}
	for (i=0; i<document.getElementsByTagName("h5").length; i++)
	{
		text = encodeURI(document.getElementsByTagName("h5")[i].innerHTML); //firstChild.data);
		text = text.replace(/&amp;/g, "__");
		document.getElementsByTagName("h5")[i].innerHTML = '<img src="../php/headline.php?text=' + text + '&style=h5">';
	}
}


// ----------------------------------------------------------------------
// Interaktion
//-----------------------------------------------------------------------

function Hilite_Icon(name, status)
{
	var file = name;
	var i = file.indexOf("_");
	if (i > 0)
		file = file.substr(0, i);
		
	document.getElementById("ic_" + name).src = "../img/icons/" + file + "_" + status + ".gif";
}

function Hilite_Meta(id, status)
{
	document.getElementById("me_" + id).src = "../img/meta/m_" + id + "_" + language + "_" + status + ".png";
}

function Hilite_MinMax(status)
{
	var file = "max";
	if (pageStatus & 1)
		file = "min";
	if (document.getElementById("ic_minmax"))
		document.getElementById("ic_minmax").src = "../img/icons/" + file + "_" + status + ".gif";	
}

// ------------------------- Suche ----------------------------

function Open_Search()
{
	Resize_HeadHeight(1, 'Blend_Layer("search", 1.0, 0.25, "tsearch")|Init_Search()');	
	Show_Layer("ic_search", "hidden");
}

function Close_Search()
{
	if (document.getElementById("results"))
		this.location.replace("../" + hostId + "/" + pageFile + "?nf");
	else
		Blend_Layer("search", 0.0, 0.25, "tsearch", 'Resize_HeadHeight(0)|Show_Layer("ic_search", "visible")');
}

function Init_Search()
{
	var val = document.search.matchword.value;
	document.getElementById("check_matchword").src = "../img/check_" + val + ".gif";
	val = document.search.booland.value;
	document.getElementById("check_booland").src = "../img/check_" + val + ".gif";
	document.search.q.focus();
}

function Do_Search()
{
	if (document.search.q.value.length > 2)
		document.search.submit();
}

function Open_Result(id)
{
	document.search.action = "../srv/search.php";
	document.search.pageid.value = id;
	document.search.search.value = 0;	// keine neue Suche starten
	document.search.submit();
}

function Check_Search(name)
{
	var input = eval("document.search." + name);
	var val = input.value;
	val = 1 - val;
	input.value = val;
	document.getElementById("check_" + name).src = "../img/check_" + val + ".gif";
}

// ------------------------- Sprache wechseln ----------------------------

function Toggle_Language()
{
	if (langFile.indexOf("?") < 0)
		this.location.replace(langFile + "?nf"); //this.location.replace("../" + hostId + "/" + langFile + "?nf");
	else
		this.location.replace(langFile); // this.location.replace("../" + hostId + "/" + langFile);
	
}

var winPrint = null;

function Print_Page(id, lang, hostid)
{
//	winPrint = window.open("../srv/print.php?id=" + id + "&lang=" + lang, "prnt", 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=yes,width=640,height=120,screenX=0,screenY=0,left=0,top=0');
	prnt.location.replace("../srv/print.php?id=" + id + "&lang=" + lang + "&hostid=" + hostid);
}
// ----------------------------------------------------------------------
// Seitenstatus
//-----------------------------------------------------------------------

var statusTimer = null;

function Change_Status()
{
	if ((statusTimer) || (animTimer))
		return;
	
	var fn;
	
	switch (pageStatus)
	{
		case 0:		// Overview zu Fulltext
		document.getElementById("fulltext").style.overflow = "hidden";
		fn = 'Resize_MainHeight(1)|Blend_Layer("fulltext", 1.0, 0.7, "tstatus")|Set_Status(1)';
		Blend_Layer("overview", 0.0, 0.7, "tstatus", fn);
		break;
		case 1:		// Fulltext zu Overview
		document.getElementById("sidebar").style.height = "128px";
		document.getElementById("fulltext").style.overflow = "hidden";
		Blend_Layer("options", 0.0, 0.7, "toptions", "");
		fn = 'Resize_MainHeight(0)|Blend_Layer("overview", 1.0, 0.7, "tstatus")|Set_Status(0)';
		Blend_Layer("fulltext", 0.0, 0.7, "tstatus", fn);
		break;
		case 3:		// Slideshow zu Overview
		document.getElementById("sidebar").style.height = "128px";
		fn = 'Blend_Layer("mediactrl", 0.0, 0.5, "toptions")|Blend_Layer("mediaoptions", 0.0, 0.5, "toptions")|Blend_Layer("sidebar", 1.0, 0.5, "toptions")';
		Blend_Layer("mediainfo", 0.0, 0.5, "toptions", fn);
		fn = 'Resize_MainHeight(0)|Blend_Layer("overview", 1.0, 0.7, "tstatus")|Set_Status(0)';
		Blend_Layer("media", 0.0, 0.5, "tstatus", fn);
		break;
		case 5:		// Video zu Overview
		document.getElementById("sidebar").style.height = "128px";
		fn = 'Blend_Layer("mediaoptions", 0.0, 0.5, "toptions")|Blend_Layer("sidebar", 1.0, 0.5, "toptions")';
		Blend_Layer("mediainfo", 0.0, 0.5, "toptions", fn);
		fn = 'Resize_MainHeight(0)|Blend_Layer("overview", 1.0, 0.7, "tstatus")|Set_Status(0)';
		Show_Layer("media", "hidden", fn);
		break;
		case 7:		// Documents zu Overview
		document.getElementById("sidebar").style.height = "128px";
		fn = 'Blend_Layer("sidebar", 1.0, 0.5, "toptions")';
		Blend_Layer("mediaoptions", 0.0, 0.5, "toptions", fn);
		fn = 'Resize_MainHeight(0)|Blend_Layer("overview", 1.0, 0.7, "tstatus")|Set_Status(0)';
		Blend_Layer("media", 0.0, 0.5, "tstatus", fn);
		break;
	}
}

function Set_Status(status)
{
	
	switch (status)
	{
		case 1:	
		document.getElementById("fulltext").style.overflow = "auto";
		Blend_Layer("options", 1.0, 1.0, "toptions", "");
		if (pageStatus == 0)	// vorheriger Status war overview
		{
			if (mediaSld.length > 2)
				Init_Slides();
		//	if (mediaVid.length > 2)
		//		Init_Video();
		}
		else					// vorheriger Status war media
		{
			document.getElementById("media").innerHTML = '';			// aus Performancegründen Inhalte aus dem media-layern löschen
			document.getElementById("mediainfo").innerHTML = '';
			document.getElementById("mediactrl").innerHTML = '';
		}
		document.getElementById("sidebar").style.height = "256px";
		break;
		case 0:		// Overview
		if (pageStatus > 1) // vorheriger Status war media
		{
			document.getElementById("media").innerHTML = '';			// aus Performancegründen Inhalte aus dem media-layern löschen
			document.getElementById("mediainfo").innerHTML = '';
			document.getElementById("mediactrl").innerHTML = '';
		}
		break;
		case 7:		// Documents
//		document.getElementById("media").style.overflow = "auto";		// Dokumentenliste mit Scrollbalken
		break;
	}
	
	pageStatus = status;
	Hilite_MinMax(0);
	statusTimer = null;
}

var mainH = new Array(160,161,163,167,173,179,187,196,206,216,227,238,250,261,273,284,295,305,315,324,332,338,344,348,351,352);
var headH = new Array(64,65,67,69,72,75,79,83,87,92,96,101,106,111,115,120,124,128,132,135,138,140,142,143,144);

var animTimer = null;

function Resize_MainHeight(idx, func)
{
	if (animTimer)
		setTimeout('Resize_MainHeight(' + idx + ', \'' + func + '\')', 40);
		
	var index;
	
	if (idx == 1) 
	{
		index = 0;
		delta = 1;
	}
	else
	{
		index = mainH.length - 1;
		delta = -1;
	}
	animTimer = setTimeout('Resize_LayerH("main", "mainH", ' + index + ', ' + delta + ', \'' + func + '\')', 40);
}

function Resize_HeadHeight(idx, func)
{
	if (animTimer)
		setTimeout('Resize_HeadHeight(' + idx + ', \'' + func + '\')', 40);

	var index;
	
	if (idx == 1) 
	{
		index = 0;
		delta = 1;
	}
	else
	{
		index = headH.length - 1;
		delta = -1;
	}
	
	animTimer = setTimeout('Resize_LayerH("head", "headH", ' + index + ', ' + delta + ', \'' + func + '\')', 40);
}

function Resize_LayerH(layer, data, index, delta, func)
{
	var h = eval(data)[index];
	document.getElementById(layer).style.height = h + "px";
	index += delta;
	if ((index >= 0) && (index < eval(data).length))
		animTimer = setTimeout('Resize_LayerH("' + layer + '", "' + data + '", ' + index + ', ' + delta + ', \'' + func + '\')', 40);
	else
	{
		animTimer = null;
		if (func)
		{
			var i = func.indexOf("|");
			if (i > 0)
				func = func.substr(0, i-1) + ', \'' + func.substr(i+1) + '\')';	
			setTimeout(func, 0);
		}
	}
}

//-----------------------------------------------------------------------
// Menü
//-----------------------------------------------------------------------

var menuTimer = null;
var menuOpen = -1;

function Init_Menu()
{
	menuImages = new Array();	// Grafik-Preload
	var i, j, str;
	
	j = 0;
	for (i=0; i<submenu.length; i++)
	{
		menuImages[j] = new Image();
		menuImages[j].src = "../img/menu/m_" + submenu[i]["id"] + "_" + language + "_0.png";
		j++;
		menuImages[j] = new Image();
		menuImages[j].src = "../img/menu/m_" + submenu[i]["id"] + "_" + language + "_1.png";
		j++;		
	}
	
}

function Show_Menu(id)
{
	if (id == menuId)
	{
		if (menuTimer)
		{
			clearTimeout(menuTimer);
			menuTimer = null;
		}
		Show_Layer("menu2", "hidden");
		Show_Layer("menu1", "visible");
		menuOpen = -1;
		return;
	}
	
	if (menuOpen == id)
		return;
		
	if (menuTimer)
	{
		clearTimeout(menuTimer);
		menuTimer = null;
	}

	var m = 0;
	
	while (m < submenu.length)
	{
		if (submenu[m]["main"] == id)
			break;
		m++;
	}
	
	var html = "";
	var str;
	
	while (m < submenu.length)
	{
		if (submenu[m]["main"] != id)
			break;
			
		str = menuDef;
		str = str.replace(/\[HREF\]/g, submenu[m]["file_"+language]);
		str = str.replace(/\[ID\]/g, submenu[m]["id"]);
		str = str.replace(/\[WIDTH\]/g, submenu[m]["width_"+language]);
		html += str;
		m++;
	}

	menuTimer = setTimeout('Hide_Menu()', 3000);

	document.getElementById("menu2").innerHTML = html;
	document.getElementById("menu2").style.left = subpos["x_"+language+"_"+id] + "px";
	if (menuOpen < 0)
		Blend_Menu("menu1", "menu2", 0.2);
	menuOpen = id;
}

function Hide_Menu()
{
	Blend_Menu("menu2", "menu1", 2.0);
	menuOpen = -1;
}

function Keep_Menu()
{
	if (menuTimer)
	{
		clearTimeout(menuTimer);
		menuTimer = null;
	}
}

function Drop_Menu(n)
{
	if (menuTimer)
		clearTimeout(menuTimer);
	menuTimer = setTimeout('Hide_Menu()', 3000);
}

function Blend_Menu(layer1, layer2, duration)
{
	if (alphaTimer["tmenu"])
		clearInterval(alphaTimer["tmenu"]);

	if (browserID == "IE")
		document.getElementById(layer2).style.filter = "Alpha(opacity=0)";
	else	
		document.getElementById(layer2).style.opacity = 0.0;
	document.getElementById(layer2).style.visibility = "visible";	
	document.getElementById(layer1).style.visibility = "visible";	
	
	var delta = 1.0 / (duration * 25);	
	alpha["tmenu"] = 0;
	alphaTimer["tmenu"] = setInterval('Fade_X_' + browserID + '("' + layer1 + '", "' + layer2 + '", ' + delta + ', "tmenu")', 40);	// Cross-Fade
}

//-------------------------------------------------------------
// Hintergrundbilder
//-------------------------------------------------------------
var fps = 20;
var bgIndex = 0;
var bgLoad = -2;

function Show_Bg(index)
{
	if (bgSlides)
	{
		if (bgLoad < 0)
		{
			if (index == 0)	
				Blend_Layer("background0", 1.0, 0.3, "tbg", 'Load_Bg()');
			bgLoad++;
		}
		else
			bgLoad = 1;
	}
	else
		Blend_Layer("background0", 1.0, 0.3, "tbg");
}

function Load_Bg()
{
	Show_Layer("background" + (1-bgIndex), "hidden");
	bgLoad = 0;
	document.getElementById("bg" + (1-bgIndex)).src = pathBg + bgPath + "/_" + bgIdx + bgFile;
	bgIdx++;
	if (bgIdx > bgSlides)
		bgIdx = 1;
}

function Swap_Bg()
{
	document.getElementById("background" + (1-bgIndex))	.style.zIndex = 2;
	document.getElementById("background" + bgIndex)	.style.zIndex = 1;
	bgIndex = 1 - bgIndex;
	Blend_Layer("background" + bgIndex, 1.0, 0.3, "tbg", 'Load_Bg()');
}

//-------------------------------------------------------------
// Alpha-Blending
//-------------------------------------------------------------

var alphaTimer = new Array();
alphaTimer["tmenu"] = null;
alphaTimer["tstatus"] = null;
alphaTimer["toptions"] = null;
alphaTimer["tslide"] = null;
alphaTimer["tinfo"] = null;
alphaTimer["tbg"] = null;
alphaTimer["tsearch"] = null;

var alpha = new Array();
alpha["tmenu"] = 0;
alpha["tstatus"] = 0;
alpha["toptions"] = 0;
alpha["tslide"] = 0;
alpha["tinfo"] = 0;
alpha["tbg"] = 0;
alpha["tsearch"] = 0;

function Blend_Layer(layer, value, duration, type, func)
{
	if (alphaTimer[type])
		clearInterval(alphaTimer[type]);

	if (browserID == "IE")
		document.getElementById(layer).style.filter = "Alpha(opacity=" + ((1.0-value)*100) + ")";
	else	
		document.getElementById(layer).style.opacity = 1.0-value;
	document.getElementById(layer).style.visibility = "visible";	
	
	var delta = 1.0 / (duration * fps);	
	alpha[type] = 1.0-value;
	var fn = "In";
	if (value < 0.5)
		fn = "Out";
	alphaTimer[type] = setInterval('Fade_' + fn + '_' + browserID + '("' + layer + '", ' + delta + ', "' + type + '", \'' + func + '\')', Math.floor(1000/fps));	
		
}

function Show_Layer(layer, vis, func)
{
	var alpha = 0.0;
	if (vis == "visible")
		alpha = 1.0;
		
	if (browserID == "IE")
		document.getElementById(layer).style.filter = "Alpha(opacity=" + (alpha*100) + ")";
	else	
		document.getElementById(layer).style.opacity = alpha;
	document.getElementById(layer).style.visibility = vis;	
	
	if (func)
	{
		var i = func.indexOf("|");
		if (i > 0)
			func = func.substr(0, i-1) + ', \'' + func.substr(i+1) + '\')';	
		setTimeout(func, 0);
	}
}

function Fade_X_MZ(layer1, layer2, delta, type, func)
{
	alpha[type] += delta;
	if (alpha[type] > 1.0)
		alpha[type] = 1.0;
	document.getElementById(layer2).style.opacity = alpha[type];
	document.getElementById(layer1).style.opacity = 1.0 - alpha[type];
	if (alpha[type] >= 1.0)
	{
		document.getElementById(layer1).style.visibility = "hidden";
		clearInterval(alphaTimer[type]);
		alphaTimer[type] = null;
		if (func)
		{
			var i = func.indexOf("|");
			if (i > 0)
				func = func.substr(0, i-1) + ', \'' + func.substr(i+1) + '\')';	
			setTimeout(func, 0);
		}
	}
}

	
function Fade_X_IE(layer1, layer2, delta, type, func)
{
	alpha[type] += delta;
	if (alpha[type] > 1.0)
		alpha[type] = 1.0;
	document.getElementById(layer2).style.filter = "Alpha(opacity=" + (alpha[type]*100) + ")";
	document.getElementById(layer1).style.filter = "Alpha(opacity=" + ((1.0-alpha[type])*100) + ")";
	if (alpha[type] >= 1.0)
	{
		document.getElementById(layer1).style.visibility = "hidden";
		clearInterval(alphaTimer[type]);
		alphaTimer[type] = null;
		if (func)
		{
			var i = func.indexOf("|");
			if (i > 0)
				func = func.substr(0, i-1) + ', \'' + func.substr(i+1) + '\')';	
			setTimeout(func, 0);
		}
	}
}

function Fade_In_MZ(layer, delta, type, func)
{
	alpha[type] += delta;
	if (alpha[type] > 1.0)
		alpha[type] = 1.0;
	document.getElementById(layer).style.opacity = alpha[type];
	if (alpha[type] >= 1.0)
	{
		clearInterval(alphaTimer[type]);
		alphaTimer[type] = null;
		if (func)
		{
			var i = func.indexOf("|");
			if (i > 0)
				func = func.substr(0, i-1) + ', \'' + func.substr(i+1) + '\')';	
			setTimeout(func, 0);
		}
	}
}

	
function Fade_In_IE(layer, delta, type, func)
{
	alpha[type] += delta;
	if (alpha[type] > 1.0)
		alpha[type] = 1.0;
	document.getElementById(layer).style.filter = "Alpha(opacity=" + (alpha[type]*100) + ")";
	if (alpha[type] >= 1.0)
	{
		clearInterval(alphaTimer[type]);
		alphaTimer[type] = null;
		if (func)
		{
			var i = func.indexOf("|");
			if (i > 0)
				func = func.substr(0, i-1) + ', \'' + func.substr(i+1) + '\')';	
			setTimeout(func, 0);
		}
	}
}

function Fade_Out_MZ(layer, delta, type, func)
{
	alpha[type] -= delta;
	if (alpha[type] < 0.0)
		alpha[type] = 0.0;
	document.getElementById(layer).style.opacity = alpha[type];
	if (alpha[type] <= 0.0)
	{
		document.getElementById(layer).style.visibility = "hidden";
		clearInterval(alphaTimer[type]);
		alphaTimer[type] = null;
		if (func)
		{
			var i = func.indexOf("|");
			if (i > 0)
				func = func.substr(0, i-1) + ', \'' + func.substr(i+1) + '\')';	
			setTimeout(func, 0);
		}
	}
}

	
function Fade_Out_IE(layer, delta, type, func)
{
	alpha[type] -= delta;
	if (alpha[type] < 0.0)
		alpha[type] = 0.0;
	document.getElementById(layer).style.filter = "Alpha(opacity=" + (alpha[type]*100) + ")";
	if (alpha[type] <= 0.0)
	{
		document.getElementById(layer).style.visibility = "hidden";
		clearInterval(alphaTimer[type]);
		alphaTimer[type] = null;
		if (func)
		{
			var i = func.indexOf("|");
			if (i > 0)
				func = func.substr(0, i-1) + ', \'' + func.substr(i+1) + '\')';	
			setTimeout(func, 0);
		}
	}
}

//-----------------------------------------------------------------------
// Medien
//-----------------------------------------------------------------------

var fullWidth, fullHeight;

function Close_Media()
{
	var fn;
	
	switch (pageStatus)
	{
		case 3:
		fn = 'Blend_Layer("mediainfo", 0.0, 0.5, "toptions")|Blend_Layer("sidebar", 1.0, 0.5, "toptions")|Set_Status(1)';
		Blend_Layer("mediaoptions", 0.0, 0.5, "toptions", fn);
		fn = 'Blend_Layer("mediactrl", 0.0, 0.5, "tstatus")|Blend_Layer("fulltext", 1.0, 0.7, "tstatus")';
		Blend_Layer("media", 0.0, 0.5, "tstatus", fn);
		break;
		case 5:
		fn = 'Blend_Layer("mediainfo", 0.0, 0.5, "toptions")|Blend_Layer("sidebar", 1.0, 0.5, "toptions")|Set_Status(1)';
		Blend_Layer("mediaoptions", 0.0, 0.5, "toptions", fn);
		fn = 'Blend_Layer("fulltext", 1.0, 0.7, "tstatus")';
		Show_Layer("media", "hidden", fn);
		break;	
		case 7:
		fn = 'Blend_Layer("sidebar", 1.0, 0.5, "toptions")';
		Blend_Layer("mediaoptions", 0.0, 0.5, "toptions", fn);
		fn = 'Blend_Layer("fulltext", 1.0, 0.7, "tstatus")|Set_Status(1)';
		Blend_Layer("media", 0.0, 0.5, "tstatus", fn);
		break;
	}
}

function ZoomIn_Media()
{
	fullWidth = winWidth - 336;
	document.getElementById("fullsize").style.width = winWidth + "px";	
	document.getElementById("fullsize").style.height = winHeight + "px";
	
	switch (pageStatus)
	{
		case 3:	// Slides
		Load_Slides("high");
		Blend_Layer("fullsize", 1.0, 0.5, "tbg", 'Open_FullSlides()');
		break;
		case 5: // Video
		Blend_Layer("fullsize", 1.0, 0.5, "tbg", 'Open_FullVideo()');
		break;
		default:
		return;		
		break;
	}
}

function ZoomOut_Media()
{
	switch (pageStatus)
	{
		case 3:	// Slides
		Blend_Layer("fullsize", 0.0, 0.5, "tbg", 'Open_HalfSlides()');
		break;
		case 5: // Video
		autoPlay = "false";
		document.getElementById("fullmedia").innerHTML = '';	// muss leider gekillt werden
		Blend_Layer("fullsize", 0.0, 0.5, "tbg", 'Open_HalfVideo()');
		break;
		default:
		return;		
		break;
	}
}
//------------------------- Slideshow -----------------------------------------

var sldImages;
var sldInfo;
var sldCnt = 0;
var sldFile = 0;
var sldIndex = 0;
var sldOrder;
var sldPlane = 0;

function Init_Slides()
{
	if (sldCnt > 0)
		return;
	var i;
	var data = mediaSld.split("|");
	sldFile = data[0];
	sldOrder = data[1].split(",");
	sldCnt = sldOrder.length;
	Load_Slides("low");	
	
	sldInfo = new Array(sldCnt+1);
	
	for (i=0; i<=sldCnt; i++)
	{
		sldInfo[i] = data[2+i];
	}
}

function Load_Slides(res)
{
	var i, str;

	sldImages = new Array(sldCnt);
	for (i=0; i<sldCnt; i++)
	{
		sldImages[i] = new Image();
		str = "000" + sldOrder[i];
		sldImages[i].src = pathMedia + res + "/" + str.substr(str.length-3) + "_" + sldFile;
	}
}

function Open_Slides()
{
	mediaZoom = 0;
	sldIndex = 0;
	
//	document.getElementById("media").style.overflow = "hidden";
	document.getElementById("mediazoom").style.visibility = "inherit";
	document.getElementById("media").style.width = sldSize[0];			// Breite zurücksetzen (s. Open_Video)
	document.getElementById("fullmedia").style.bottom = "80px";			// vertikale Position zurüksetzen (s. Open_Video)
	document.getElementById("fullinfo").style.bottom = "80px";			// vertikale Position zurüksetzen (s. Open_Video)
	document.getElementById("fulltext").style.overflow = "hidden";
	
	var fn = 'Open_HalfSlides()';
	Blend_Layer("options", 0.0, 0.5, "toptions", fn);

	fn = 'Blend_Layer("sidebar", 0.0, 0.5, "tstatus")|Blend_Layer("mediaoptions", 1.0, 0.5, "tstatus")|Set_Status(3)';
	Blend_Layer("fulltext", 0.0, 0.5, "tstatus", fn);
}

function Open_HalfSlides()
{
	document.getElementById("fullctrl").innerHTML = '';		
	document.getElementById("fullinfo").innerHTML = '';		
	document.getElementById("fullmedia").innerHTML = '';

	Show_Layer("fullmedia", "hidden");
	Show_Layer("fullctrl", "hidden");
	Show_Layer("fullinfo", "hidden");
	
	document.getElementById("media").style.visibility = "hidden";
	document.getElementById("mediactrl").style.visibility = "hidden";
	document.getElementById("mediainfo").style.visibility = "hidden";

//	document.getElementById("media").style.width = sldSize[0] + "px";
//	document.getElementById("media").style.height = sldSize[1] + "px";
	
	document.getElementById("media").innerHTML = '<div id="slide0" class="slidebox" style="width:100%; height:100%; z-index:2"><img id="sld0" src="' + sldImages[sldIndex].src + '" width="100%" height="100%"></div><div id="slide1" class="slidebox" style="width:100%; height:100%; z-index:1"><img id="sld1" src="' + sldImages[sldIndex].src + '" width="100%" height="100%"></div>';
	document.getElementById("mediainfo").innerHTML = '<div id="info0" class="infobox desc" style="z-index:2"><h6>' + sldInfo[0] + '</h6>' + sldInfo[sldIndex+1] + '</div><div id="info1" class="infobox desc" style="z-index:1"><h6>' + sldInfo[0] + '</h6>' + sldInfo[sldIndex+1] + '</div>';
	document.getElementById("mediactrl").innerHTML = '<span id="counter">' + (sldIndex+1) + '</span><br><img src="../img/black.gif" width="20" height="1"><br>' + sldCnt + '<br><img onClick="Next_Slide(-1)" src="../img/prev.gif" width="16" height="16" vspace="4" style="cursor:pointer"><br><img onClick="Next_Slide(1)" src="../img/next.gif" width="16" height="16" style="cursor:pointer">';

	mediaZoom = 0;
	sldPlane = 0;
	Blend_Layer("media", 1.0, 0.8, "toptions", 'Blend_Layer("mediactrl", 1.0, 0.5, "toptions")');
	Blend_Layer("mediainfo", 1.0, 0.5, "tinfo");
}

function Open_FullSlides()
{
	var w = sldSize[2];
	var h = sldSize[3];
	if (w > fullWidth)
	{
		h = Math.floor(h * fullWidth / w);
		w = fullWidth;
	}
	
	document.getElementById("mediactrl").innerHTML = '';		
	document.getElementById("mediainfo").innerHTML = '';		
	document.getElementById("media").innerHTML = '';

	Show_Layer("media", "hidden");
	Show_Layer("mediactrl", "hidden");
	Show_Layer("mediainfo", "hidden");

	document.getElementById("fullmedia").style.visibility = "hidden";
	document.getElementById("fullctrl").style.visibility = "hidden";
	document.getElementById("fullinfo").style.visibility = "hidden";

	document.getElementById("fullmedia").style.width = w + "px";
	document.getElementById("fullmedia").style.height = h + "px";
	document.getElementById("fullinfo").style.height = h + "px";
	document.getElementById("fullmedia").innerHTML = '<div id="slide0" class="slidebox" style="width:100%; height:100%; z-index:2"><img id="sld0" src="' + sldImages[sldIndex].src + '" width="100%" height="100%"></div><div id="slide1" class="slidebox" style="width:100%; height:100%; z-index:1"><img id="sld1" src="' + sldImages[sldIndex].src + '" width="100%" height="100%"></div>';
	document.getElementById("fullinfo").innerHTML = '<div id="info0" class="infobox desc" style="z-index:2"><h6>' + sldInfo[0] + '</h6>' + sldInfo[sldIndex+1] + '</div><div id="info1" class="infobox desc" style="z-index:1"><h6>' + sldInfo[0] + '</h6>' + sldInfo[sldIndex+1] + '</div>';
	document.getElementById("fullctrl").innerHTML = '<div style="float:right"><img onClick="Next_Slide(-1)" src="../img/prev.gif" width="16" height="16" hspace="16" style="cursor:pointer"><img onClick="Next_Slide(1)" src="../img/next.gif" width="16" height="16" style="cursor:pointer"></div><span id="counter">' + (sldIndex+1) + '</span>&nbsp;|&nbsp;' + sldCnt;

	mediaZoom = 1;
	sldPlane = 0;
	
	Blend_Layer("fullmedia", 1.0, 0.8, "toptions", 'Blend_Layer("fullctrl", 1.0, 0.5, "toptions")');
	Blend_Layer("fullinfo", 1.0, 0.5, "tinfo");
	
}

function Next_Slide(dir)
{
	sldIndex += dir;
	if (sldIndex >= sldCnt)
		sldIndex = 0;
	else if (sldIndex < 0)
		sldIndex = sldCnt-1;
	document.getElementById("sld" + (1-sldPlane)).src = sldImages[sldIndex].src;
	document.getElementById("info" + (1-sldPlane)).innerHTML = '<h6>' + sldInfo[0] + '</h6>' + sldInfo[sldIndex+1];
	Blend_Layer("slide" + sldPlane, 0.0, 1.6, "tslide", "Swap_Slides()");		
	Blend_Layer("info" + sldPlane, 0.0, 1.0, "tinfo", "");	
	document.getElementById("counter").innerHTML = String(sldIndex+1);
}

function Swap_Slides()
{
	document.getElementById("slide" + sldPlane).style.zIndex = 1;
	document.getElementById("info" + sldPlane).style.zIndex = 1;
	sldPlane = 1-sldPlane;
	document.getElementById("slide" + sldPlane).style.zIndex = 2;
	document.getElementById("info" + sldPlane).style.zIndex = 2;
	
	document.getElementById("slide" + (1-sldPlane)).style.visibility = "visible";
	document.getElementById("info" + (1-sldPlane)).style.visibility = "visible";
	if (browserID == "IE")
	{
		document.getElementById("slide" + (1-sldPlane)).style.filter = "Alpha(opacity=100)";
		document.getElementById("info" + (1-sldPlane)).style.filter = "Alpha(opacity=100)";
	}
	else
	{
		document.getElementById("slide" + (1-sldPlane)).style.opacity = 1.0;
		document.getElementById("info" + (1-sldPlane)).style.opacity = 1.0;
	}
}

//---------------- Video ------------------------------------------------------------------------------

var videoHTML = '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="__W__" height="__H__" id="video"><param name="movie" value="__FILE__?play=__PLAY__" /><param name="loop" value="false" /><param name="quality" value="high" /><param name="bgcolor" value="#FFFFFF" /><embed src="__FILE__?play=__PLAY__" loop="false" quality="high" bgcolor="#FFFFFF" width="__W__" height="__H__" name="video" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" /></object>';

var autoPlay = "true";

function Init_Video()
{
	autoPlay = "true";
}

function Open_Video()
{
	mediaZoom = 0;
	
	var data = mediaVid.split("|");

	document.getElementById("media").style.width = data[1] + "px";			// Kl. Video enthält Controller rechts, daher layer verbreitern
	if (data[3].length < 2)
		document.getElementById("mediazoom").style.visibility = "hidden";
	else
	{
		document.getElementById("mediazoom").style.visibility = "inherit";
		document.getElementById("fullmedia").style.bottom = "48px";			// Video enthält controller, daher muss der layer tiefer gesetzt werden
		document.getElementById("fullinfo").style.bottom = "48px";			// Video enthält controller, daher muss der layer tiefer gesetzt werden
	}
	
//	document.getElementById("media").style.overflow = "hidden";
	document.getElementById("fulltext").style.overflow = "hidden";
	document.getElementById("mediactrl").innerHTML = '';
	document.getElementById("fullctrl").innerHTML = '';		
	
	var fn = 'Open_HalfVideo()';
	Blend_Layer("options", 0.0, 0.5, "toptions", fn);

	fn = 'Blend_Layer("sidebar", 0.0, 0.5, "tstatus")|Blend_Layer("mediaoptions", 1.0, 0.5, "tstatus")|Set_Status(5)';
	Blend_Layer("fulltext", 0.0, 0.5, "tstatus", fn);
}

function Open_HalfVideo()
{
	document.getElementById("fullinfo").innerHTML = '';		
//	document.getElementById("fullmedia").innerHTML = '';

	Show_Layer("fullmedia", "hidden");
	Show_Layer("fullinfo", "hidden");
	
	document.getElementById("media").style.visibility = "hidden";
	document.getElementById("mediainfo").style.visibility = "hidden";

	var data = mediaVid.split("|");
		
	var str = videoHTML.replace(/__FILE__/g, pathMedia + "low/" + data[0]);
	str = str.replace(/__PLAY__/g, autoPlay);
	str = str.replace(/__W__/g, data[1]);
	str = str.replace(/__H__/g, data[2]);
	document.getElementById("media").innerHTML = str;
	document.getElementById("mediainfo").innerHTML = '<div class="infobox desc" style="z-index:2"><h6>' + data[5] + '</h6>' + data[6] + '</div>';

	mediaZoom = 0;
	Show_Layer("media", "visible");
	Blend_Layer("mediainfo", 1.0, 0.5, "tinfo");
}

function Open_FullVideo()
{
	var data = mediaVid.split("|");
	
	var w = data[3];
	var h = data[4];
	if (w > fullWidth)
	{
		h = Math.floor(h * fullWidth / w);
		w = fullWidth;
	}
	
	document.getElementById("mediainfo").innerHTML = '';		
	document.getElementById("media").innerHTML = '';

	Show_Layer("media", "hidden");
	Show_Layer("mediainfo", "hidden");

	document.getElementById("fullmedia").style.visibility = "hidden";
	document.getElementById("fullinfo").style.visibility = "hidden";

	document.getElementById("fullmedia").style.width = w + "px";
	document.getElementById("fullmedia").style.height = h + "px";
	document.getElementById("fullinfo").style.height = h + "px";

	var str = videoHTML.replace(/__FILE__/g, pathMedia + "high/" + data[0]);
	str = str.replace(/__PLAY__/g, autoPlay);
	str = str.replace(/__W__/g, String(w));
	str = str.replace(/__H__/g, String(h));
	document.getElementById("fullmedia").innerHTML = str;
	document.getElementById("fullinfo").innerHTML = '<div class="infobox desc" style="z-index:2"><h6>' + data[5] + '</h6>' + data[6] + '</div>';

	mediaZoom = 1;
	Show_Layer("fullmedia", "visible");
	Blend_Layer("fullinfo", 1.0, 0.5, "tinfo");
}

//--------------------- Documents --------------------------------------------

function Open_Documents()
{
	var data = mediaDoc.split("|");
	
	document.getElementById("media").style.width = "512px";
	
	var i, path, str = '<table class="layout">';
	
	for (i=0; i<data.length; i+=2)
	{
		str += '<tr>';
		if (data[i].substr(data[i].length-3, 3).toLowerCase() == "pdf")
		{
			path = pathMedia + language + '/' + data[i];
			str += '<td><img src="../img/pdf.gif" width="29" height="32" vspace="2"></td>';
		}
		else
		{
			path = pathMedia + 'de/' + data[i];
			str += '<td><img src="' + pathMedia + 'en/' +  data[i] + '" height="32" vspace="2"></td>';
		}
		str += '<td>' + data[i+1] + '</td><td><a href="' + path + '" target="_blank" class="textmenu">' + tOpen + '</a>&nbsp;&nbsp;|&nbsp;&nbsp;<a href="javascript:Download_File(\'' + path + '\')" class="textmenu">' + tLoad + '</a></td></tr>';
	}
	str += '</table>';
	
	document.getElementById("media").innerHTML = str;
	document.getElementById("mediazoom").style.visibility = "hidden";
	document.getElementById("fulltext").style.overflow = "hidden";
//	document.getElementById("media").style.overflow = "hidden";
	
	var fn = 'Blend_Layer("sidebar", 0.0, 0.5, "toptions")|Blend_Layer("mediaoptions", 1.0, 0.5, "toptions")';
	Blend_Layer("options", 0.0, 0.5, "toptions", fn);

	fn = 'Blend_Layer("media", 1.0, 1.0, "tstatus")|Set_Status(7)';
	Blend_Layer("fulltext", 0.0, 0.5, "tstatus", fn);
}

function Download_File(path)
{
	To_Do();
}

//--------------------- Webspecial -------------------------------------------

var winSpc = null;

function Open_Special()
{
	var data = mediaSpc.split("|");
	
	var w = screen.width;
	if (w > 1600)
		w = 1600;
	var x = (w - data[1]) >> 1;
	var h = screen.height - 64;
	var y = (h - data[2]) >> 1;
	
	winSpc = window.open(data[0], "osk", 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,width=' + data[1] + ',height=' + data[2] + ',screenX=' + x + ',screenY=' + y + ',left=' + x + ' ,top=' + y);
	winSpc.focus();	
}

//---------------------------------------------------------------------------
