/**
 * description:		js common functions :: tca web site
 * date created:	2007-08-17 14:49:00
 * version:			$Id: fnc.common.js 1 2010-03-06 12:32:21Z pfuchs $
 */

 /* bilder vorladen und wechseln */
/* variablen initialisieren */
var preloadFlag = false;

/* vorladen der bilder fuer die image bar */
function preloadImages() {
	if (document.images) {
		omo1 = newImage("img/punkt.gif");
		omo2 = newImage("img/punkt_aktiv.gif");
		omo3 = newImage("img/link_extern_na.gif");
		ssw_logo_11 = newImage("img/tca_logo_11.jpg");
		ssw_logo_13 = newImage("img/tca_logo_13.jpg");
		ssw_logo_15 = newImage("img/tca_logo_15.jpg");
		ssw_logo_17 = newImage("img/tca_logo_17.jpg");
		ssw_logo_19 = newImage("img/tca_logo_19.jpg");
		ssw_menu_11 = newImage("img/punkt_11.gif");
		ssw_menu_13 = newImage("img/punkt_13.gif");
		ssw_menu_15 = newImage("img/punkt_15.gif");
		ssw_menu_17 = newImage("img/punkt_17.gif");
		ssw_menu_19 = newImage("img/punkt_19.gif");
		ssw_menuac_11 = newImage("img/punkt_aktiv_11.gif");
		ssw_menuac_13 = newImage("img/punkt_aktiv_13.gif");
		ssw_menuac_15 = newImage("img/punkt_aktiv_15.gif");
		ssw_menuac_17 = newImage("img/punkt_aktiv_17.gif");
		ssw_menuac_19 = newImage("img/punkt_aktiv_19.gif");
		preloadFlag = true;
	}
}

/* neues bild objekt erzeugen */
function newImage(arg) {
	if (document.images) {
		rslt = new Image();
		rslt.src = arg;
		return rslt;
	}
}

/* bilder wechseln */
function changeImages() {
	if (document.images && (preloadFlag == true)) {
		for (var i=0; i<changeImages.arguments.length; i+=2) {
			document.getElementById(arguments[i]).src = changeImages.arguments[i+1]+'_'+css_no+'.gif';
			//alert(changeImages.arguments[i+1]+'_'+css_no+'.gif');
		}
	}
}

/* bilder wechseln :: einfache variante */
function changeImages2() {
	if (document.images && (preloadFlag == true)) {
		for (var i=0; i<changeImages2.arguments.length; i+=2) {
			document.getElementById(arguments[i]).src = changeImages2.arguments[i+1];
		}
	}
}

/** style switcher :: start **/
function scss(step, oload, depth) {
	var step;		// schrittweite
	var oload;		// 
	var depth;		// bilder verzeichnis tiefe
	var dir;		// bilder verzeichnis
	var lnk;		// link items - that is, stylesheets
	var i = 0;		// zaehler variable
	// normale darstellung
	if (step == 1) {
		step = 0;
		css_no = 15;
	}
	// bilder verzeichnis ermitteln
	if (depth == 0) {
		dir = 'img/';
	} else if (depth == 1) {
		dir = '../img/';
	}
	// make sure we're under limit
	if (10 < css_no+step && css_no+step < 20) {
		// logo in der passenden groesse austauschen
		if (document.getElementById('logo_img')) {
			var imgToChange = dir+'tca_logo_'+(css_no+step)+'.jpg';
			//alert(imgToChange);
			changeImage(imgToChange,'logo_img');
		}
		// menue punkte in der passenden groesse austauschen
		changeMenuImage(step, dir);
		// passendes stylesheet aktivieren
		for(i=0; lnk=document.getElementsByTagName("link")[i]; i++) {
			// get stylesheets
			if(lnk.getAttribute("rel").indexOf("style") != -1 && lnk.getAttribute("title")) {
				if(lnk.getAttribute("title").indexOf("sz") != -1)
					lnk.disabled = true;
					// check if 1 - it's a stylesheet with a title, 2- if it is an article stylesheet, disable it
				if (lnk.getAttribute("title").indexOf(css_no+step) > -1)
					lnk.disabled = false;
					// if it's the next in line, enable it
					cookieManager.setCookie("tca_style", css_no+step, 365);
					// store cookie imformation
			}
		}
		if (oload == 'false') {
			// don't forget to increment the size, so we know what's next....
			css_no = css_no+step;
		}
		// plus oder minus am jeweiligen ende deaktivieren
		setElementContent(css_no, depth, dir);
	}
}

/* plus und minus zur veraenderung der darstellung 
   am ende und am anfang der vergroesserungs- bzw. 
   verkleinerungsstufe auf inaktiv setzen */
function setElementContent(css_no, depth, dir) {
	var css_no, depth, dir;
	if(css_no == 19) {
		document.getElementById('plus').innerHTML = '<img class="as" src="'+dir+'plus_na.jpg" alt="" title="" />';
	} else {
		document.getElementById('plus').innerHTML = '<a href="javascript:scss(2,\'false\','+depth+');"><img class="as" src="'+dir+'plus.jpg" alt="Vergößerte Darstellung" title="Vergößerte Darstellung" /></a>';
	}
	if(css_no == 11) {
		document.getElementById('minus').innerHTML = '<img class="as" src="'+dir+'minus_na.jpg" alt="" title="" />';
	} else {
		document.getElementById('minus').innerHTML = '<a href="javascript:scss(-2,\'false\','+depth+');"><img class="as" src="'+dir+'minus.jpg" alt="Verkleinerte Darstellung" title="Verkleinerte Darstellung" /></a>';
	}
}

/* aktives css file setzen */
function setActiveStyleSheet(css_no) {
	var i, a, main;
	for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
		if (a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title")) {
			a.disabled = true;
			if (a.getAttribute("title") == 'sz_'+css_no) a.disabled = false;
			cookieManager.setCookie("tca_style", css_no, 365);
			// plus oder minus am jeweiligen ende deaktivieren
			//setElementContent(css_no);
		}
	}
}

/* aktives css file ermitteln */
function getActiveStyleSheet() {
	var i, a, css_no;
	for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
		if (a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title") && !a.disabled) {
			css_no = a.getAttribute("title");
			css_no = parseFloat(css_no.substr(3, 2));
			return css_no;
		}
	}
	return null;
}

/* bevorzugtes css file ermitteln */
function getPreferredStyleSheet() {
	var i, a, css_no;
	for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
		if (a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("rel").indexOf("alt") == -1 && a.getAttribute("title")) {
			css_no = a.getAttribute("title");
			css_no = parseFloat(css_no.substr(3, 2));
			return css_no;
		}
	}
	return null;
}

/* bilder fuer groessenwechsel tauschen */
function changeImage(imgToChange, id) {
	document.images[id].src = imgToChange;
}

/* bilder wechsel fuer das haupt menue je nach vergroesserungsstufe */
function changeMenuImage(step, dir) {
	var arrIds = new Array("fir", "kon", "akt", "lei");
	var activeId;
	for (i = 0; i < arrIds.length; ++i) {
		activeId = arrIds[i]+'Ac';
		if (document.getElementById(activeId)) {
			var imgToChange = dir+'punkt_aktiv_'+(css_no+step)+'.gif';
			changeImage(imgToChange, activeId);
		} else {
			var imgToChange = dir+'punkt_'+(css_no+step)+'.gif';
			changeImage(imgToChange, arrIds[i]);
		}
	}
}
/** style switcher :: end **/

var cookie = cookieManager.getCookie("tca_style");
var css_no = parseFloat(cookie ? cookie : getPreferredStyleSheet());
window.onload = preloadImages;

