/* default Vars */
var shkStyleName = "";
var shkScriptInit = null;

/* initJS */
window.onload=function(E) { initShk('js'); }

function initShk(t) {
	if(shkScriptInit != 1) {
		shkScriptInit = 1;
		// init Style-Switcher
		ci = shkReadCookie("shk-style");
		shkStyleName = ci ? ci : getPreferredStyleSheet();
		setActiveStyleSheet(shkStyleName);
		// set Text-Size
		shkSetTextSize();
	}
}

/* cookie function */
function shkCreateCookie(name,value,days) {
	var cookie = name + '=' + value + ';';
	if (days) {
		var date = new Date();
		var milliSecondsInDay = 86400000; // 24*60*60*1000
		date.setTime(date.getTime()+(days*milliSecondsInDay));
		cookie += ' expires=' + date.toGMTString() + ';';
	}
	cookie += ' path=/';
	document.cookie = cookie;
}
function shkReadCookie(name) {
	var nameEQ = name + '=';
	var ca = document.cookie.split(';');
	for(var i = 0; i < ca.length; i++) {
		var c = ca[i];
		while (c.charAt(0) == ' ') {
			c = c.substring(1, c.length);
		}
		if (c.indexOf(nameEQ) == 0) {
			return c.substring(nameEQ.length,c.length);
		}
	}
	return null;
}


/* Style-Switcher function */
function setActiveStyleSheet(sname) {
	var i, a;
	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") == sname) {
				a.disabled = false;
				shkStyleName = sname;
				shkCreateCookie("shk-style", shkStyleName, 6);
			}
		}
	}
}
function getActiveStyleSheet() {
	var i, a;
	for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
		if(a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title") && !a.disabled) {
			return a.getAttribute("title");
		}
	}
	return null;
}
function getPreferredStyleSheet() {
	var i, a;
	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")
		) return a.getAttribute("title");
	}
	return null;
}




/* Schriftgrößenveränderung */
function shkSetTextSize(chgsize,rs) {
	if (!document.documentElement || !document.body) { return; }
	var newSize;
	var startSize = parseInt(shkGetDocTextSize());
	if (startSize == 0) { startSize = 13; }
	switch (chgsize) {
		case 'incr': 
			newSize = startSize + 2;
			break;
		case 'decr':
			newSize = startSize - 2;
			break;
		case 'reset':
			if (rs) {
				newSize = rs;
			} else {
				newSize = 13;
			}
			break;
		default:
			newSize = parseInt(shkReadCookie('shk-textsize'));
			if (!newSize) { 
				newSize = startSize;
			}
			break;
	}
	if (newSize < 13) {
		newSize = 13;
	}
	if (newSize > 21) {
		newSize = 21;
	}
	
	newSize += 'px';
	document.documentElement.style.fontSize = newSize;
	document.body.style.fontSize = newSize;
	shkCreateCookie('shk-textsize', newSize, 6);
}
function shkGetDocTextSize() {
	if (!document.body) { return 0; }
	var size = 0;
	var body = document.body;
	if (body.style && body.style.fontSize) {
		size = body.style.fontSize;
	} else if (typeof(getComputedStyle) != 'undefined') {
		size = getComputedStyle(body,'').getPropertyValue('font-size');
	} else if (body.currentStyle) {
		size = body.currentStyle.fontSize;
	}
	return size;
}
