
//
// Erstellt am: 20.11.2008
// Autor: M
//
// Beschreibung
//
// ***
//
// LETZTE ÄNDERUNG: 07.01.2009, Bugfix in der style_best Funktion:
// 	es wird nun das Vorhandensein der Kategorie-Nav. geprüft!
//

DHTML = (document.getElementById || document.all || document.layers);
if (DHTML) {


/* Adds an event to window.onload without overwriting currently
 * assigned onload functions.
 * Function found at Simon Willison's weblog - 
 *	  http://simon.incutio.com/ */
function
add_load_event (func)
{
	var old_onload  = window.onload;

	if (typeof window.onload != 'function') {
		window.onload   = func;
	} 
	else {
		window.onload   = function () {
			old_onload ();
			func ();
		}
	}
}


/* Die Schrift in der Navigation wird gegen Bilder ausgetauscht: */
function
text2pics ()
{
	if (document.body.id != "best") {
		var nainers	= Array ("augustyn", "leistungen");
		var n_anz	= 2;
		var i		= 0;
		while (i < n_anz) {
			var links	= document.getElementById (nainers [i]);
			links.className = links.className+" bilder";
			links		= links.getElementsByTagName ("a");
			var anz		= links.length;
			var j		= 0;
			while (j < anz) {
				var alt = links [j].innerHTML;
				links [j].innerHTML = 
					"<span class='noscr'>"		+
						links [j].innerHTML	+
					"</span>"			+
					"<img src='images/nav.png' "	+
					"alt='"+alt+"' \/>";
				++j;
			}

			++i;
		}
	}

	var logo	= document.getElementById ("logo");
	alt		= logo.innerHTML;
	logo.className	= logo.className+" bild";
	logo.innerHTML = "<span class='noscr'>"+logo.innerHTML+"</span>"+
		"<img src='images/logo.png' alt='"+alt+"' />";

	var header	= document.getElementById ("text");
	header		= header.getElementsByTagName ("h1") [0];
	if (header) {
		header.className= header.className+" bild";
		alt		= header.innerHTML;
		header.innerHTML= "<span class='noscr'>"+header.innerHTML+
			"</span><img src='images/nav.png' alt='"+alt+"' />";
	}
}


function
style_subnav ()
{
	if (document.body.id != "best") {
		var blumen = document.getElementById ("blumen");
		blumen.innerHTML = blumen.innerHTML+
			"<div id='subnav_styler'></div>";
		seize_subnav_styler ();
	}
}


function
seize_subnav_styler ()
{
	var hoehe = 30+document.getElementById ("text").offsetHeight;
	if (document.getElementById ("bilder")) {
		hoehe += document.getElementById ("bilder").offsetHeight;
	}
	var styler = document.getElementById ("subnav_styler");
	styler.style.height = hoehe+"px";
}


function
init_links()
{
	var anchors = document.getElementsByTagName("a");

	// Loop through all anchor tags
	for(var i=0; i<anchors.length; i++) {
		var anchor = anchors[i];

		// Oeffnen von neuen Browserfenstern:
		if(	anchor.getAttribute("href")	&&
			anchor.getAttribute("rel")	== "newwin")
		{
			anchor.href = "javascript:newwin('"+
				anchor.getAttribute("href")+"');";
		}
		else if(anchor.getAttribute("href")	&&
			anchor.getAttribute("rel")	== "mehl")
		{
			if (anchor.className == "img") {
				var img = anchor.getElementsByTagName("img")[0];
				var mailad = img.alt;
			}
			else {
				var mailad	= anchor.innerHTML;
			}
			mailad		= mailad.replace(/, /, "@");
			mailad		= mailad.replace(/ /g, ".");
			anchor.href	= "mailto:" + mailad;

			if (anchor.className == "img") {
				img.alt = mailad;
			}
			else {
				anchor.innerHTML= mailad;
			}
		}
		else if(anchor.getAttribute("href")	&&
			anchor.getAttribute("rel")	== "picture")
		{
			// Link zu einem Fotos soll sich in einem Popup oeffen:
			anchor.href = "javascript:popupPic('"	+
				anchor.getAttribute("href")	+
				"', '"				+
				anchor.getAttribute("title")	+
				"');";
		}
	}
}


function
newwin(url) {
	var w = window.open(url);
	w.focus ();
}


/* Erwartet als Parameter eine Liste mit Pfadangaben für Bilder. Diese werden
 * dann einfach in die UL für die Slideshow eingefügt; davor wird die UL 
 * geleert. Am Ende wird die Slideshow neu gestartet. */
function
switch_slides ()
{
	var ul	= document.getElementById (ss_bgid);
	ul	= ul.getElementsByTagName ("ul")[0];
	ul.innerHTML = "";

	var anz		= arguments.length;
	var i		= 0;
	var pic, thumb	= "";
	ss_bilder [0]	= Array ();
	ss_index [0]	= -1;
	while (i < anz) {
		pic	= arguments [i];
		thumb	= pic.replace (/\./, "-thb.");
		ul.innerHTML += "<li><a href=\"#\" onclick=\"ss_switch(0,0,'"+
				i+"')\"><img"+
				" src=\"images/_slides/"+thumb+"\" "+
				" alt=\"\" /></a></li>";
		ss_bilder [0].push ("images/_slides/"+pic);
		++i;
	}
	clearTimeout (ss_timeout);
	ss_timeout = setTimeout ("ss_switch(0)", ss_timer [i]);
}


/* Umfasst alle Texte, welche auf "Größe X cm (Bild)" lauten mit einem
 * zusätzlichen SPAN-Tag. Außerdem wird die Liste der Kategorien 
 * um den Punkt "Sonderformen". */
function
style_best ()
{
	if (document.body.id == "best") {
		var doc = document.getElementById ("text");
		doc.innerHTML = doc.innerHTML.replace (
				/Größe (\d+) cm \(Bild\)/g,
				"<b class='pic'>Größe $1 cm (Bild)</b>");
		if (document.getElementById ("kats")) {
			var kats = document.getElementById ("kats");
			kats.innerHTML = kats.innerHTML+
				"<li> <a href=\"#kat_5\" "+
				">Urnenschmuck</a></li>"
				;
		}
	}
}


/* Konfiguration für Slideshows: */
var ss_bgid = "bilder";


add_load_event (init_links);
add_load_event (text2pics);
add_load_event (style_subnav);
add_load_event (style_best);

window.onresize = function () {
	if (document.body.id != "best") {
		seize_subnav_styler ();
	}
}


} /* if DHTML */



