// *********************************************************************************************
// * ALLGEMEINE FUNKTIONEN																	   *
// *********************************************************************************************

toggleElementContent = function(el, string1, string2) {
	(el.innerHTML == string1) ?	el.innerHTML = string2 : el.innerHTML = string1;
}


// *********************************************************************************************
// * ALLGEMEINE VARIABLEN																	   *
// *********************************************************************************************

var intervalTimer;


// *********************************************************************************************
// * EFFEKTE FUER DIE KATEGORIELISTE														   *
// *********************************************************************************************

initCategoryList = function() {
		var toggleLinks = document.getElementsByClassName('showhide');
		var categoryHeadline = document.getElementsByClassName('kategorieliste');
		
		var categoryLists = new fx.Accordion(toggleLinks, categoryHeadline , {opacity: true});

		//Elemente fuer die JS Vesion anzeigen bzw. ausblenden
		toggleLinks.each(function(el){
    		el.style.display = "block";
		});	
}


// *********************************************************************************************
// * EFFEKTE FUER DIE SUCHBOX																   *
// *********************************************************************************************

makeSuchboxUnvisible = function () {
	document.getElementById('suchbox').style.top = "-200px";
	window.clearInterval(intervalTimer);
}

posSuchBox = function () {
	var el = document.getElementById('suchelink');
	// Function aus der Protype light:
	// Reference: pos[0] = left Offset; pos[1] = top Offset
	var pos = Position.cumulativeOffset(el);

	if (document.getElementById('wrapper')) {
		pos[0] += 2;
		pos[1] += el.offsetHeight;
	} else {
		//Positionierung auf den Bilderseiten
		pos[1] += el.offsetHeight + 2;
	}
	
	// Der IE zahlt die Border des wrappers nicht mit zum Offest
	if (navigator.appName == "Microsoft Internet Explorer") {
		pos[0] += 14;
		pos[1] += 14;
	}	

	document.getElementById('suchbox').style.top = pos[1] + "px";
	document.getElementById('suchbox').style.left = pos[0] + "px";
}

showSuchbox = function() {
	suchBoxHeight.toggle();
	posSuchBox();
	
}

hideSuchbox = function() {
	suchBoxHeight.toggle();
	// Suchbox wird nach Intervall verschoben, weil im Safari die Formularfelder zwar unsichtbar, aber immer
	// noch editierbar sind.
	intervalTimer = window.setInterval("makeSuchboxUnvisible()", 1000);
}

initSuchbox = function() {
	suchBoxHeight = new fx.Height('suchbox', {duration: 200, transition: fx.cubic});
	suchBoxOpacity = new fx.Opacity('suchbox', {duration: 200});

	suchBoxOpacity.custom(0, 0.8);
	suchBoxHeight.hide();
}


// *********************************************************************************************
// * EFFEKTE FUER DAS AUSBLENDEN DES HORIZONTALEN MENUES									   *
// *********************************************************************************************

var menuVisibility = false;

toggleMenu = function() {
	menuHeight.toggle();
	toggleElementContent(document.getElementById('menutogglelink'), "Menü einblenden", "Menü ausblenden");

	// Mit dem Ausblenden der Menuezeile wird auch eine evtl. angezeigte Suchbox ausgeblenden.
	(menuVisibility == true) ? menuVisibility = false :  menuVisibility = true;
	 if (menuVisibility == false) {	hideSuchbox() };
}

initShowHideMenu = function() {
	document.getElementById('menuhideshowlinkcontainer').style.display = "block";
	
	menuHeight= new fx.Height('menuelements', {duration: 200, transition: fx.cubic});
	menuHeight.hide();
}


// *********************************************************************************************
// * EFFEKTE FUER KOMMENTARSEITE															   *
// *********************************************************************************************

reloadLivePreview = function() {
	var NewText = document.getElementById("body").value;
	NewText = NewText.replace(/\n/g,  '<br />');
	NewText = '<p class="livepreviewheadline">Livepreview</p>' + NewText;
	document.getElementById("livepreview").innerHTML = NewText;
}

initCommentForm = function() {
	//Livepreview Bereich einblenden und Vorschaubutton ausblenden
	document.getElementById('preview').style.display = "none";
}


// *********************************************************************************************
// * BILDERFADE																				   *
// *********************************************************************************************

pictureFadeSetFull = function() {
	pictureFade.setOpacity(1);
	window.clearInterval(intervalTimer);
}