var datamintsCurFontSize = 100;

document.observe('dom:loaded', function () { 
	// Beim laden immer den aktuellen Wert absolut setzen
	storedFontSize = parseInt(readcookie_min('fontsize'));
		
	if (storedFontSize > 30 && storedFontSize < 180) {
		// Weniger als 10% und mehr als 180% macht keinen Sinn und u.U. die Site unbedienbar, wobei die Größe auch noch im cookie festhängen würde.
		changeSize('abs', storedFontSize);
		datamintsCurFontSize = datamintsCurFontSize;
	}
} );

function changeSize(changetype, size) {
	// changetype kann 'abs' (absolut) oder 'rel' (relativ) sein.
	// Bei rel kann man auch - Werte angeben	
	
	valRel = 0; // Bezugswert
	
	if (changetype == 'rel') {
		// Bezugswert ist die aktuelle Größe, wenn relativ
		valRel = datamintsCurFontSize;
	}
	
	size = valRel + parseInt(size);
	datamintsCurFontSize = size;
	
	if (size <= 30 || size >= 180) {
		// Rücksetzen, wenn Müll übergeben
		size = 100;
	}
	
	document.getElementsByTagName("body")[0].style.fontSize = size + "%";
	setcookie_min('fontsize', size);  
} 

/**
 * Setcookie setzt anhand des wert einen Cookie im Browser des Nutzers. Dabei wird darauf geachtet daß alte
 * Einträge nicht verloren gehen (Abfragen -> Hinzüfügen -> Übertragen).
 */
function setcookie_min(key, size) {
	// Neuen Wert zum Cookie hinzufügen.
	document.cookie = key + '=' + encodeURIComponent(size) + '; max-age=' + (60 * 60 * 24 * 365);
}

/**
 * Genauso wie setcookie frägt readcookie ersteinmal den Browser ob ein cookie mit dem Namen "waitpostingcookie" gesetzt ist.
 * Falls das der Fall ist werden die einzelnen postid's ermittelt und mit der an die Funktion übergebenen vergleicht.
 * Wenn es dann eine Übereinstimmung gibt, wird true zurückgeliefert, wenn nicht false.
 */
function readcookie_min(key) {
	var wert = 0;
	// Alle Cookies dieser Seite auslesen.
	var allcookies = document.cookie;
	// Suche nach dem Anfang des Cookies 'waitpostingcookie'.
	var pos = allcookies.indexOf(key + '=');
	
	// Wenn Cookie mit dem Namen existiert, auslesen.
	if (pos != -1) {
		// Anfang des Cookie-Werts.
		var start = pos + key.length + 1;
		// Ende des Cookie-Werts.
		var ende = allcookies.indexOf(';', start);
		if (ende == -1) ende = allcookies.length;
		// Extrahiere den Wert.
		wert = allcookies.substring(start, ende);
		// Decodiere ihn.
		wert = decodeURIComponent(wert);
	}
	return wert;
}
