//  Title: My Text Size
// Origin: http://devedge.netscape.com/
// Tweaks: www.melvinwallerjr.com (JoeFlash)
function myTextSize(chgsize) { // set the page text size
	if (!document.documentElement || !document.body) { return; }
	var newSize=100, startSize=parseInt(getTextSize());
	if (!startSize || startSize < 50) { startSize = 100; }
	switch (chgsize) {
		case "incr":
			newSize = startSize + 5;
			break;
		case "decr":
			newSize = startSize - 5;
			break;
		case "reset":
			newSize = 100;
			break;
		default:
			newSize = parseInt(myGetCookie("my-textsize"));
			if (!newSize) { newSize = startSize; }
			break;
	}
	if (newSize < 50) { newSize = 50; }
	newSize += "%";
	document.documentElement.style.fontSize = newSize;
	document.body.style.fontSize = newSize;
	mySetCookie("my-textsize", newSize, 365);
}

function getTextSize() { // retrieve current text size from the page
	if (!document.body) { return 0; }
	var size=0, 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;
}

function mySetCookie(name,value,days) { // set a cookie value for "my-textsize"
	var myDate, cookie=name+"="+value+";";
	if (days) {
		myDate = new Date();
		myDate.setTime(myDate.getTime() + (days * 24 * 60 * 60 * 1000));
		cookie += " expires=" + myDate.toGMTString() + ";";
	}
	cookie += " path=/";
	document.cookie = cookie;
}

function myGetCookie(name) { // retrieve cookie value for "my-textsize"
	var c, nameEQ=name+"=", ca=document.cookie.split(";");
	for (var i=0; i < ca.length; i++) {
		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 "";
}

function init() { // script initialization routine
	myTextSize();
}

window.onload = init;
