function hasClass(ele,cls) {
	return ele.className.match(new RegExp('(\\s|^)'+cls+'(\\s|$)'));
}
function addClass(ele,cls) {
	if (!this.hasClass(ele,cls)) ele.className += " "+cls;
}
function removeClass(ele,cls) {
	if (hasClass(ele,cls)) {
		var reg = new RegExp('(\\s|^)'+cls+'(\\s|$)');
		ele.className=ele.className.replace(reg,' ');
	}
}

function setStylesheet(styleTitle)
{
	var currTag;

	if (document.getElementsByTagName)
	{
		for (var i = 0; (currTag = document.getElementsByTagName("link")[i]); i++)
		{
			if (currTag.getAttribute("rel").indexOf("style") != -1 && currTag.getAttribute("title"))
			{
				if (currTag.getAttribute("title") != "Large Text"){ // added by DH
					currTag.disabled = true;
				} // added by DH

				if(currTag.getAttribute("title") == styleTitle)
				{
					currTag.disabled = false;
				}
			}
		}
	}
	
	return true;
};

function enableStylesheet(styleTitle)
{
	var currTag;

	if (document.getElementsByTagName)
	{
		for (var i = 0; (currTag = document.getElementsByTagName("link")[i]); i++)
		{
			if (currTag.getAttribute("rel").indexOf("style") != -1 && currTag.getAttribute("title"))
			{
				if(currTag.getAttribute("title") == styleTitle)
				{
					currTag.disabled = false;
				}
			}
		}
	}
	
	return true;
};

function disableStylesheet(styleTitle)
{
	var currTag;

	if (document.getElementsByTagName)
	{
		for (var i = 0; (currTag = document.getElementsByTagName("link")[i]); i++)
		{
			if (currTag.getAttribute("rel").indexOf("style") != -1 && currTag.getAttribute("title"))
			{
				if(currTag.getAttribute("title") == styleTitle)
				{
					currTag.disabled = true;
				}
			}
		}
	}
	
	return true;
};


function savePreferences()
{
	var currTag;
	var textsize = "Normal Text";

	if (document.getElementsByTagName)
	{
		for (var i = 0; (currTag = document.getElementsByTagName("link")[i]); i++)
		{
			if (currTag.getAttribute("rel").indexOf("style") != -1 && currTag.getAttribute("title"))
			{
				if(currTag.getAttribute("title") == "Large Text")
				{
					if(currTag.disabled == false) 
					{
						textsize = currTag.getAttribute("title");
					}
				}
			}
		}
	}
	createCookie("textsize", textsize, 365);
	return true;
};

function checkPreferences()
{
	if (!readCookie("textsize"))
	{
		createCookie("textsize", "Normal Text", 365);
		selectTextButton("textsize-default");
	}
	else
	{
		disableStylesheet("Large Text");					
		if((readCookie("textsize") == escape("Large Text")) || (readCookie("textsize") == "Large Text")) {
			enableStylesheet("Large Text");
			selectTextButton("textsize-large");	
		} else {
			disableStylesheet("Large Text");
			selectTextButton("textsize-default");		
		}	
	}

	return true;
};

function textSize(toggle) {
	if (toggle == 1) {
		disableStylesheet("Large Text");
		enableStylesheet("Large Text");
		selectTextButton("textsize-large");	
	} else {
		disableStylesheet("Large Text");
		selectTextButton("textsize-default");		
	}
};

function selectTextButton(buttonId) {
	var button = document.getElementById(buttonId)

	if (button.id == "textsize-default") {
		$('textsize-default').addClassName('selected');
		$('textsize-large').removeClassName('selected');
	} else if (button.id == "textsize-large") {
		$('textsize-large').addClassName('selected');
		$('textsize-default').removeClassName('selected');
	}
};

function readCookie(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;
}

function createCookie(name,value,days) {
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}