/*#######################################*//*			LixaSolutions				 *//*			Beta FONT SIZER				 *//*     Free to use just keep this		 *//*#######################################*/window.onload = function() {	_LSfontSizer.init(null);}origSize = new Array();var _LSfontSizer = {	contentID:'mainContent',// The outer most element of the text you want to resize	lsElements: new Array("p","a","h1","h2","li","strong","em"),	// Array of elements to resize fonts B.0.0.2 enhancement	lsExlude: 'lsNoFS',	// Set an exlude font resize class B.0.0.2 enhancement	debug: false,		// Allow alert of tracking values	enabeled: true,		// Enable the fontsize tool to function single point to disable	maxChange: 5, 		// Max number of increase/decreases in font size	changeCnt: 0, 		// Track change counts	defaultSize: '12',	// NA - default font size	maxSize: '16',		// NA - max font size	minSize: '8',		// NA - minimum font size	curSize: null,		// loop container for current size and manipulation	origSizeCnt: 0,		// Track the item change count for reset value mapping	echo: '',			// debug value outputs	activeFunc: null,	// Store the active function that was called	init: function(call){			this.echo='';			this.activeFunc = call;			if(this.activeFunc == null) { // Setup Listeners onload				try {					Event.add($('fntSizeInc'),'mouseup',function() { _LSfontSizer.init('add'); });					Event.add($('fntSizeDec'),'mouseup',function() { _LSfontSizer.init('dec'); });					Event.add($('fntSizeReset'),'mouseup',function() { _LSfontSizer.subSetFunc('get'); });					if(document.all) {						$('fntSizeInc').style.cursor = "hand";						$('fntSizeDec').style.cursor = "hand";						$('fntSizeReset').style.cursor = "hand";					} else {						$('fntSizeInc').style.cursor = "pointer";						$('fntSizeDec').style.cursor = "pointer";						$('fntSizeReset').style.cursor = "pointer";					}				} catch(e) { 					//do nothing since the fontSizer interface is not present				}				//return; //End			}						if(this.activeFunc=='add') {				if(this.changeCnt+1>this.maxChange)					this.enabeled = false;				else {					this.changeCnt++; this.enabeled = true;				}			} else if (this.activeFunc=='dec') {				if(this.changeCnt-1<(0-this.maxChange))					this.enabeled = false;				else {					this.changeCnt--; this.enabeled = true;				}			}			if(this.enabeled) {				bodyObjs = $(this.contentID);				/* B.0.0.1 				for(var i=0;i<bodyObjs.length;i++){					if(bodyObjs[i].nodeType == 1)  // IE 						this.traverseTree(bodyObjs[i])					// END nodeType				} // END for loop				if(this.debug) alert(this.echo);				*/				/* B.0.0.2 enhancement for element only */				for(var e=0;e<this.lsElements.length;e++){					myElementCol = bodyObjs.getElementsByTagName(this.lsElements[e]);					this.echo += "\n\rTagName: "+this.lsElements[e] + " count: "+myElementCol.length;										for(var i=0;i<myElementCol.length;i++){												if(myElementCol[i].nodeType == 1 && myElementCol[i].className!=this.lsExlude)  // IE 							this.traverseTree(myElementCol[i])						// END nodeType					} // END for loop					if(this.debug) alert(this.echo);									}				/* End B.0.0.2 */			}		},	set: function(obj) {			this.curSize = getStyle(obj.parentNode,'font-size');			if( this.curSize != 'undefined' && obj.nodeName=="#text" && obj.parentNode.nodeName != "DIV") {				origSize.push(this.curSize);				this.echo += "\n\rSET DEFAULT = " + this.curSize;			}		},	get: function(obj) {			this.curSize = origSize[this.origSizeCnt];			if( this.curSize != 'undefined' && obj.nodeName=="#text" && obj.parentNode.nodeName != "DIV") {					var newSize = parseInt((this.curSize.substring(0,this.curSize.length-2))) + 1;					obj.parentNode.style.fontSize = newSize + this.curSize.substring(this.curSize.length-2,this.curSize.length);					this.echo += "\n\rRESET TO DEFAULT:: "+this.curSize+" >> Parent = "+obj.parentNode.nodeName+" >> This = "+obj.nodeName;//+" :: nodeValue "+obj.nodeValue;					this.origSizeCnt++;			}	},	add: function(obj) {			this.curSize = getStyle(obj.parentNode,'font-size');			if( this.curSize != 'undefined' && obj.nodeName=="#text" && obj.parentNode.nodeName != "DIV") {					var newSize = parseInt((this.curSize.substring(0,this.curSize.length-2))) + 1;					obj.parentNode.style.fontSize = newSize + this.curSize.substring(this.curSize.length-2,this.curSize.length);					this.echo += "\n\rADD:: "+this.curSize+" >> Parent = "+obj.parentNode.nodeName+" >> This = "+obj.nodeName;//+" :: nodeValue "+obj.nodeValue;					this.origSizeCnt++;			}		},	dec: function(obj) {			this.curSize = getStyle(obj.parentNode,'font-size');			if( this.curSize != 'undefined' && obj.nodeName=="#text" && obj.parentNode.nodeName != "DIV") {					var newSize = parseInt((this.curSize.substring(0,this.curSize.length-2))) - 1;					obj.parentNode.style.fontSize = newSize + this.curSize.substring(this.curSize.length-2,this.curSize.length);					this.echo += "\n\rDEC:: "+this.curSize+" >> Parent = "+obj.parentNode.nodeName+" >> This = "+obj.nodeName;//+" :: nodeValue "+obj.nodeValue;					this.origSizeCnt++;			}		},	traverseTree: function(tree){			var cnt = null						if(tree.hasChildNodes() && tree.nodeName != "P") { // Don't process paragraph sub elements				var nodes = tree.childNodes.length;				for(var i=0; i<tree.childNodes.length; i++) {					if(tree.childNodes[i].nodeName != "A"){						this.traverseTree(tree.childNodes[i]);						cnt++;					}					this.echo += " :: "+cnt+" :: ";				} 			} else if (tree.nodeName == "P") { // Only pass the outer paragraph tag once to limit is change occurance to one				if(this.activeFunc == 'add') 					this.add(tree.childNodes[0]);				else if (this.activeFunc == 'dec')					this.dec(tree.childNodes[0]);				else if (this.activeFunc == 'get')					this.get(tree.childNodes[0]);				else 					this.set(tree.childNodes[0]);			} else {				if(this.activeFunc == 'add') 					this.add(tree);				else if (this.activeFunc == 'dec')					this.dec(tree);				else if (this.activeFunc == 'get')					this.get(tree);				else 					this.set(tree);			}		},		subSetFunc: function(val) {			this.origSizeCnt = 0;			this.echo += "\n\rOrigSize Length = "+ origSize.length;			for(i=0;i<origSize.length;i++) {				this.echo += "\n\rOrigSize["+ i + "] = "+origSize[i];			}			this.enabeled = true;			this.changeCnt = 0;			this.init(val);		}}function $(element) {	var elements = new Array();	for (var i=0;i<arguments.length;i++) {		var element = arguments[i];		if (typeof element == 'string') element = document.getElementById(element);		if (arguments.length == 1) return element;		elements.push(element);	}	return elements;}function getStyle(el,styleProp){	var x = el;	if (x.currentStyle)		var y = x.currentStyle['fontSize'];	else if (window.getComputedStyle)		try { var y = document.defaultView.getComputedStyle(x,null).getPropertyValue('font-size'); }		catch(e) {			//donothing		}	return y;}var Event = {	add: function(obj,type,fn) {		if (obj.attachEvent) {			obj['e'+type+fn] = fn;			obj[type+fn] = function() { obj['e'+type+fn](window.event); }			obj.attachEvent('on'+type,obj[type+fn]);		} else		obj.addEventListener(type,fn,false);	},	remove: function(obj,type,fn) {		if (obj.detachEvent) {			obj.detachEvent('on'+type,obj[type+fn]);			obj[type+fn] = null;		} else		obj.removeEventListener(type,fn,false);	}}