// Blendet unter anderem das Social BookmarkTool ein und aus
function toggleObject(obj) {
	var el = document.getElementById(obj);
	if ( el.style.display != 'block' ) {
		el.style.display = 'block';
	}	else {
		el.style.display = 'none';
	}
}

// Blendet die Bereichsbilder und den Default Text ein und aus
function toggleIntro(obj) {
	var m1 = document.getElementsByName('menuvisual')[0];
	var m2 = document.getElementsByName('menuvisualdefault')[0];
	if ( obj == 'on' ) {
		m2.style.display = 'block';
		m1.style.display = 'none';
	}	else {
		m1.style.display = 'block';
		m2.style.display = 'none';
	}
}

// HovverEffekt ueber die ReiterNavigation
function hoverMainMenu(sColorClass)
{
	var sElReiter = document.getElementById("reiter");

	var sErg = sElReiter.className.match(/reiterzahl-./);
	if (sErg)
		if (sColorClass)
			sElReiter.className = sErg + ' bg-' + sColorClass;
		else
			sElReiter.className = sErg;
	else
		if (sColorClass)
			sElReiter.className = 'bg-' + sColorClass;
		else
			sElReiter.className = '';
}

// Wechselt Label Texte um
function toggleText(sTextDefault, sTextSwich, sElId)
{
	var sElText = document.getElementById(sElId);
	if (sElText.innerHTML == sTextDefault)
		sElText.innerHTML = sTextSwich;
	else
		sElText.innerHTML = sTextDefault;
}

// Rotation in der Navigation
var iReload_after = 4000;
var iReload_afterFacelift = 6000;
var iCurrentNaviEntry = 1;
var iLastNaviEntry = 0;
var bRun = true;
var tTimer = '';
// wurde die div-Hoehe schon geprueft und neu gesetzt?
var bHeightChecked = 0;
var bRotationChecked = 0;


function adjustTextArea(iNaviEntry)
{
	if (document.getElementsByName('text'+iCurrentNaviEntry)[0])
	{
		if (iNaviEntry != '')
		{
			var iHeight = $('horizonmenu').getHeight();
			$('text'+iNaviEntry).setStyle({height: (iHeight-4)+"px"});
		}
	}
}

function activateNaviEntry()
{
	if (bRun == true)
	{
		toggleIntro('off');

		adjustTextArea(iCurrentNaviEntry);

		if (document.getElementsByName('navi'+iCurrentNaviEntry)[0])
		{
			eval(document.getElementsByName('link'+iCurrentNaviEntry)[0].attributes.onmouseover.value);
			if (document.getElementsByName('navi'+iLastNaviEntry)[0])
			{
				if (document.getElementsByName('navi'+iLastNaviEntry)[0].className == 'aktiv')
					document.getElementsByName('navi'+iLastNaviEntry)[0].className = '';
				else if (document.getElementsByName('navi'+iLastNaviEntry)[0].className == 'lastaktiv')
					document.getElementsByName('navi'+iLastNaviEntry)[0].className = 'last';
			}
			document.getElementsByName('navi'+iCurrentNaviEntry)[0].className = document.getElementsByName('navi'+iCurrentNaviEntry)[0].className + 'aktiv';
			iLastNaviEntry = iCurrentNaviEntry;
			iCurrentNaviEntry++;
		}
		else
		{
			iCurrentNaviEntry = 1;
			tTimer = setTimeout('activateNaviEntry()', parseInt(iReload_after));
		}

		try
		{
					clearTimeout(tTimer);
			}
			catch (e) {}

			tTimer = setTimeout('activateNaviEntry()', parseInt(iReload_after));
	}
}

function toggleEntry(iNaviEntryId)
{
	/* Eintraege zuruecksetzen */
	var i = 1;
	while (document.getElementsByName('navi'+i)[0])
	{
		if (document.getElementsByName('navi'+i)[0].className == 'aktiv')
			document.getElementsByName('navi'+i)[0].className = '';
		else if (document.getElementsByName('navi'+i)[0].className == 'lastaktiv')
			document.getElementsByName('navi'+i)[0].className = 'last';
		i++;
	}

	/* Gewuenschten Eintrag aktivieren*/
	if (document.getElementsByName('navi'+iNaviEntryId)[0].className == '')
		document.getElementsByName('navi'+iNaviEntryId)[0].className = 'aktiv';
	else if (document.getElementsByName('navi'+iNaviEntryId)[0].className == 'last')
		document.getElementsByName('navi'+iNaviEntryId)[0].className = 'lastaktiv';
}

function pauseRotation(bDeactivateLastNaviEntry, iNaviEntryId)
{
	try
	{
				clearTimeout(tTimer);
		}
		catch (e) {}

	if (bRotationOn == true)
	{
		toggleIntro('off');
	}

		bRun = false;

		adjustTextArea(iNaviEntryId);

		if ((bRotationOn == true) && (bDeactivateLastNaviEntry == 1))
	{
		if (document.getElementsByName('navi'+iLastNaviEntry)[0].className == 'aktiv')
			document.getElementsByName('navi'+iLastNaviEntry)[0].className = '';
		else if (document.getElementsByName('navi'+iLastNaviEntry)[0].className == 'lastaktiv')
			document.getElementsByName('navi'+iLastNaviEntry)[0].className = 'last';
		else
			document.getElementsByName('navi'+iLastNaviEntry)[0].className = '';
	}
	iCurrentNaviEntry = iNaviEntryId;
	iLastNaviEntry = iNaviEntryId;
	toggleEntry(iNaviEntryId);
}

function startRotationAgain()
{
	bRun = true;
	tTimer = setTimeout('activateNaviEntry()', parseInt(0));
}


/*
 * Facelift: div anzeigen ohne move-Effekt (momentan nicht genutzt)
 */
function faceliftShowHideDivsWithoutSlide(iDivHide, iDivShow)
{
	// vorsichtshalber alle faceblock-divs und secondNavi-divs verstecken
	for(iBlockCounter = 1; iBlockCounter <= iAnzahlFaceBlocks; iBlockCounter++)
	{
		sDivHide = "faceblock-" + iBlockCounter;
		$(sDivHide).hide();

		sSecondNaviHide = "secondNavi-" + iBlockCounter;
		$(sSecondNaviHide).hide();
	}

	// und nun gewuenschte divs anzeigen
	if (iDivShow != '')
	{
		sDivShow = "faceblock-" + iDivShow;
		sSecondNaviShow = "secondNavi-" + iDivShow;
		$(sDivShow).show();
		$(sSecondNaviShow).appear({ duration: 1.0 });
	}
}

/*
 * Facelift: div anzeigen ohne move-Effekt (momentan nicht genutzt)
 */
function faceliftShowSelectedDiv(iDivShow)
{
	// wenn bHeightChecked noch nicht auf 1 is, sind noch nicht alle divs zu sehen
	// ist beim ersten Aufruf der Seite der Fall, bevor eine Rotation durchgefuehrt wurde
	if (bRotationChecked != 1)
	{
		// alle faceblock-divs verstecken
		for(iBlockCounter = 0; iBlockCounter <= iAnzahlFaceBlocks; iBlockCounter++)
		{
			sDivHide = "faceblock-" + iBlockCounter;
			$(sDivHide).hide();
		}

		sDivShow = "faceblock-" + iDivShow;
		$(sDivShow).show();
	}
	else
	{
		// linke Startposition ermitteln
		iLeftPos = iDivShow * iWidthSingleDiv;

		// das div blockumalle muss an diese Position springen
		sDivMove = "blockumalle";
		document.getElementById(sDivMove).style.left = '-' + iLeftPos + 'px';
	}
}

/*
 * Facelift: div anzeigen mit move-Effekt
 */
function faceliftShowHideDivs(iDivHide, iDivShow, sShowArt)
{
	// linke Startposition ermitteln
	if(sShowArt == 'forward')
	{
		iLeftPos = (iDivShow - 1) * iWidthSingleDiv;
	}
	else
	{
		iLeftPos = (iDivShow + 1) * iWidthSingleDiv;
	}

	// das div blockumalle muss an diese Position springen
	sDivMove = "blockumalle";
	document.getElementById(sDivMove).style.left = '-' + iLeftPos + 'px';

	// fuer die Rotation muessen alle divs sichtbar sein
	for (iDivCounter = 0; iDivCounter <= iAnzahlFaceBlocks; iDivCounter++)
	{
		sDivShow = "faceblock-" + iDivCounter;
		$(sDivShow).show();
	}

	/* Hoehe der div-Containers auf den hoechsten Wert setzen
	 * Ist erst mal durch eine fest anzugebende Höhe ersetzt worden... mum
	if (bHeightChecked != 1)
	{
		setDivHeightSecondNav();
		bHeightChecked = 1;
	}
	*/

	sSecondNaviShow = "secondNavi-" + iDivShow;

	// nach links oder rechts sliden
	if(sShowArt == 'forward')
	{
		new Effect.Move(sDivMove,{ x: -iWidthSingleDiv});
	}
	else
	{
		new Effect.Move(sDivMove,{ x: iWidthSingleDiv});
	}
}


/*
 * Facelift: Rotation
 * sShowArt: without, forward, backward
 */
function faceliftRotation(iDivHide, iDivShow, sShowArt)
{
	if (bRun == true)
	{
		bRotationChecked = 1;

		// div ein und ausblenden
		faceliftShowHideDivs(iDivHide, iDivShow, sShowArt);

		// den als naechstes anzuzeigenden div herausfinden
		if (iDivShow < iAnzahlFaceBlocks)
			iDivShowNext = iDivShow + 1;
		else
			iDivShowNext = 1;

		// jetzt muss der gerade angezeigte div-Layer wieder versteckt weden
		iDivHide = iDivShow;

		try
		{
			clearTimeout(tTimer);
		}
		catch (e) {}

		// diese Funtion mit den neuen Parametern aufrufen
		tTimer = setTimeout('faceliftRotation('+iDivHide+', '+iDivShowNext+', "forward")', parseInt(iReload_afterFacelift));
	}
}

/*
 * Facelift: Rotation anhalten
 */
function pauseFaceliftRotation()
{
	try
	{
		clearTimeout(tTimer);
	}
	catch (e) {}

		bRun = false;
}

/*
 * Facelift: Rotation erneut starten
 */
function startFaceliftRotationAgain(iDivHide, iDivShowNext, sShowArt)
{
	bRun = true;
	tTimer = setTimeout('faceliftRotation('+iDivHide+', '+iDivShowNext+', "'+sShowArt+'")', parseInt(iReload_afterFacelift));
}

function setDivHeightSecondNav(iHeight)
{
	var iDivHeightMax = 250;
	/* alle SecondNavi Bloecke durchlaufen und den heochsten Wert ermitteln
	 * Erst mal abgelöst durch eine fest einzustellende Höhe... mum
	for(iCounter = 0; iCounter < iAnzahlFaceBlocks; iCounter++)
	{
		sDiv = 'secondNavi-' + iCounter;
		var iDivHeight = document.getElementById(sDiv).clientHeight;

		if(iDivHeight > iDivHeightMax)
		{
			iDivHeightMax = iDivHeight;
		}
	}
	*/

	// jetzt allen SecondNav Divs diesen hoechsten wert zuordnen
	if (iDivHeightMax > 250)
	{
		for(iCounter = 0; iCounter <= iAnzahlFaceBlocks; iCounter++)
		{
			sDiv = 'secondNavi-' + iCounter;
			//document.getElementById(sDiv).style.height = iDivHeightMax + 'px';
			document.getElementById(sDiv).style.height = iHeight + 'px';
		}
	}
}

/*
 * Facelift: Aktuelle Themen
 */
function showTheme(sDivShow)
{
	if ($('theme-1'))
		$('theme-1').hide();

	if ($('theme-2'))
		$('theme-2').hide();

	if ($('theme-3'))
		$('theme-3').hide();

	$(sDivShow).show();
}

