/* Text Resizing Widget
Creates and controls the text resize widget

version 2008-02-11
-------------------------------------------------------- */

/* Create the Text Resize Widget
<div id="txtWidget" class="clearfix">
	<h6>Text Size</h6>
	<ol class="clearfix">
		<li class="first sm"><a href="#" onclick="setCss('S'); return false;" title="Small Text Size">T</a></li>
		<li class="md"><a href="#" onclick="setCss('M'); return false;" title="Medium Text Size" class="on">T</a></li>
		<li class="lg"><a href="#" onclick="setCss('L'); return false;" title="Large Text Size">T</a></li>
	</ol>
</div>
*/

// Font size switching G6 Text Resize component
function setCss(title) {
	var a, i;
	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") == title) a.disabled = false;
		}
	}
}

function getActiveStyleSheet() {
	var a, i;
	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() {
	return ('sm');
}

function createCookie(name,value,days) {
	var expires;
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		expires = "; expires="+date.toGMTString();
	}
	else expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

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 startResize() {
	var cookie = readCookie("APHLTextSize");
	var title = cookie ? cookie : getPreferredStyleSheet();
	setCss(title);
}

function setSize() {
	var title = getActiveStyleSheet();
	createCookie("APHLTextSize", title, 365);
}

function createTxtWidget() {
	var wSizes = new Array("sm", "md", "lg");
	var wSizeNames = new Array("Small", "Medium", "Large");
	var css = getActiveStyleSheet();

	var tw = document.createElement("div");
	tw.id = "txtWidget";
	tw.className = "clearfix";
	
	var widgetTxt = '<h6>Text Size</h6>';
	widgetTxt += '<ol class="clearfix">';
	for(var i=0; i<3;i++) {
		widgetTxt += '<li class="' + wSizes[i];
		if(wSizes[i] == css) {
			widgetTxt += ' on">';
		}
		else {
			widgetTxt += '">';
		}
		widgetTxt += '<a href="#" title="' + wSizes[i] + '">T</a></li>';
	}
	widgetTxt += '</ol>';
	
	tw.innerHTML = widgetTxt;
	return tw;
}

$j(document).ready(function() {
	
	startResize();
	
	var ctw = createTxtWidget();
	if($j("#secondary #nav-sec").length == 1) {
		$j("#secondary #nav-sec").after(ctw);
	}
	else {
		$j("#secondary").prepend(ctw);
	}
	
	$j("#txtWidget:first").addClass("first");

	$j("#txtWidget li:first").addClass("first");
	
	if(!$j("#txtWidget li:not(:first)").hasClass("on")) {
		$j("#txtWidget li:first").addClass("on");
	}
	
	$j("#txtWidget a").click(function() {
		if($j(this).parent().hasClass("on")) {
			$j("#txtWidget li").removeClass("on");
		}
		else {
			$j("#txtWidget li").removeClass("on");
			$j(this).parent().addClass("on");
		}

		var ss = $j(this).attr("title");
		setCss(ss);
		return false;
	});

});

$j(window).unload(function() {
	setSize();
});
