(function($) {
		var sessionData = {};
		var windowName 	= "";
		var domain 			= location.href.match(/\w+:\/\/[^\/]+/)[0];
		var referrer 		= (document.referrer) ? document.referrer.match(/\w+:\/\/[^\/]+/)[0] : "";

		if(referrer == "" || referrer !== domain) {
			window.name = window.name.replace("#"+domain+"#", "");
		}
			
		function init() {
			windowName = window.name = '';
			sessionData = {};
		}
		
		function loadData() {
			domain = domain.replace("https:","http:");
			stored = window.name.split("#"+domain+"#");
			windowName = window.name = stored[0];
			if (data = stored[1]) {	
				$.each(data.split(";"), function(i, data) {
							parts 		= data.split("=");
							varName 	= parts[0];
							varValue 	= unescape(parts[1]);
							sessionData[varName] = varValue;
				});
			}
		}
		
		function saveData() {
			var dataToStore = windowName+"#"+domain+"#";
			$.each(sessionData, function(varName, varValue) {		
					if (varName && varValue) {
						dataToStore += ( varName + "=" + escape( varValue ) + ";" );
					}
			});
			window.name = dataToStore;
		}
		
		$.session = function(name, value) {
			if (value) {
				if ($.isFunction(value)) {
						value = value();
				}
				if ( $.toJSON ) {
					sessionData[name] = $.toJSON(value);
				} else {
					sessionData[name] = value;
				}
			} else {
				if ( $.evalJSON ) {
					return $.evalJSON(sessionData[name]);
				} else {
					return sessionData[name];
				}
			}
		}
		
		$.getSessionData = function() {
			return sessionData;
		}		
		
		$.sessionInit = function() {
			init();
		}		
		
		$.sessionStop = function() {
			saveData();
		}		
		
		$.sessionStart = function() {
			loadData();
 		}

		$.sessionStart();
		window.onunload = function() { $.sessionStop(); };
		
})(jQuery);

function textsize(size) {
	switch(size) {
			case "normal" : 
				$('body').css('font-size',(parseInt($.session('origfontsize')))+"px");
				$('img#textimg1').attr("src","/atf/cf/{EC4C1773-A176-4E83-83E4-87C717F671CE}/fontlarge.gif");
				$('img#textimg2').attr("src","/atf/cf/{EC4C1773-A176-4E83-83E4-87C717F671CE}/fontmed.gif");
				$('img#textimg3').attr("src","/atf/cf/{EC4C1773-A176-4E83-83E4-87C717F671CE}/fontsmall_sel.gif");
				break;
			case "med" : 
				$('body').css('font-size',(parseInt($.session('origfontsize'))+2)+"px");
				$('img#textimg1').attr("src","/atf/cf/{EC4C1773-A176-4E83-83E4-87C717F671CE}/fontlarge.gif");
				$('img#textimg2').attr("src","/atf/cf/{EC4C1773-A176-4E83-83E4-87C717F671CE}/fontmed_sel.gif");
				$('img#textimg3').attr("src","/atf/cf/{EC4C1773-A176-4E83-83E4-87C717F671CE}/fontsmall.gif");
				break;
			case "large" : 
				$('body').css('font-size',(parseInt($.session('origfontsize'))+4)+"px");
				$('img#textimg1').attr("src","/atf/cf/{EC4C1773-A176-4E83-83E4-87C717F671CE}/fontlarge_sel.gif");
				$('img#textimg2').attr("src","/atf/cf/{EC4C1773-A176-4E83-83E4-87C717F671CE}/fontmed.gif");
				$('img#textimg3').attr("src","/atf/cf/{EC4C1773-A176-4E83-83E4-87C717F671CE}/fontsmall.gif");
				break;
	}
	$.session('newfontsize',size);
}
//this makes the font size site wide
$(document).ready(function(){
	$.sessionStart();
	$.session('origfontsize',$('body').css('font-size'));
	if ($.session('newfontsize') != undefined) textsize($.session('newfontsize'));
	$.sessionStop();
});

// remove multiple, leading or trailing spaces
function trim(s) {s = s.replace(/(^\s*)|(\s*$)/gi,"");s = s.replace(/[ ]{2,}/gi," ");s = s.replace(/\n /,"\n");return s;}


