hi=false;

//read font-size cookie

function largeFont() {
	document.getElementById('content').className = "large-font";
	createCookie("knowledge-font-size","large",10);
}

function mediumFont() {
	document.getElementById('content').className = "medium-font";	
	createCookie("knowledge-font-size","medium",10);
}

function smallFont() {
	document.getElementById('content').className = "small-font";
	createCookie("knowledge-font-size","small",10);
}

function writeControls() {
	document.write ('<div id="font-size">\n')
	document.write ('<span>Font Size:</span> <a class="small-font" title="Small font size" href="javascript:smallFont()">A</a>\n')
	document.write ('<a class="medium-font" title="Medium font size" href="javascript:mediumFont()">A</a>\n')
	document.write ('<a class="large-font" title="Large font size" href="javascript:largeFont()">A</a>\n')
	document.write ('</div>\n')
}

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=/";
}

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 eraseCookie(name) {
	createCookie(name,"",-1);
}

function mask(x) {

	// no masking in this site
	return ;

	for(a=0;a<=x.length-1;a++) {
		
		//find out out height and width (this will determine which mask to use)
		xH = x[a].height;	
		xW = x[a].width;
		
		//create our mask element
		xImg = document.createElement("img")
		xImg.setAttribute("src", "site-imp2/images/f/mask" + xH + "x" + xW + ".png");
		xImg.setAttribute("class","mask"); 
		xImg.setAttribute("alt",'');
		xImg.setAttribute("height",xH);
		xImg.setAttribute("width",xW);
		
		//append the image next to our base image - css should sort out the rest
		x[a].parentNode.appendChild(xImg);
	}
}

function elasticiseImages() {
	
	// base font size is 75%
	baseSize = ".75";
	
	imgArr = new Array();
	
	var list = $$('#header img', '#middle-col img');	
	
	list.some(function(element, index) {
		imgArr[index] = element;
	});
	
	var list = $$('#header input', '#middle-col input');	
	
	list.some(function(element, index) {
		if(element.type=="image") imgArr.push(element);
	});
	
	for(a=0;a<=imgArr.length-1;a++) {
		
		el = imgArr[a];
	
		el.style.height = el.height / 16 / baseSize + "em";
		
		el.style.width = el.width / 16 / baseSize + "em";		
	
	}
	
}

window.addEvent('domready', function() {

/*resize the navigation*/
resizeNav();

	//get font size
	fontSize = readCookie("knowledge-font-size");
	
	document.getElementById("content").className = "small-font" 
	
	if(fontSize) {if(fontSize.length>1) document.getElementById("content").className = fontSize + "-font" }
						
	// are there masked elements on this page?
	var masks = $$('img').filterByClass('masked'); /* filterByClass() replaces getelementByClassName() */
	if(masks.length>0) mask(masks);
	
	//make images scalable by converting the height & width to ems
	if(!window.ie)elasticiseImages();
	
	//add print button
	var list = $$('li.print');
	list.some(function(element, index) {
		element.innerHTML='<a href="javascript:print()">Print this page</a>'
	});
				
	//form focus	
		var list = $$('input.text', 'textarea.text');		
		list.some(function(element, index) {
			element.addEvent('focus', function(){
				element.setStyle('background-image', 'url(site-imp2/images/f/input-bg-focus.gif)');
			});
			element.addEvent('blur', function(){
				element.setStyle('background-image', 'url(site-imp2/images/f/input-bg.jpg)');
			});
		});
			
	// implement motools LH Navigation	
	if(!hi) {
			var list = $$('#left-col li a');
			list.some(function(element, index) {
			 
				var fx = new Fx.Styles(element, {duration:200, wait:false});
				
				var eBG = element.getStyle('background-color');
				eBG = eBG.substring(1, eBG.length);
						
				pClass = element.getParent().getStyle('background-image') != 'none';
				pLast = element.getParent().className.indexOf('last') > -1;
				pPod = element.getParent().getParent().getParent().className.indexOf('pod') > -1;
				
				if(!pClass && !pPod) { 
			 
					element.addEvent('mouseenter', function(){
						
						fx.start({
							'color': '#ffffff', 'background-color': '#6D82A1'
									
						});			
					});
				 
					element.addEvent('mouseleave', function(){
							
						fx.start({
							'color': '#000000',	'background-color': eval("'" + eBG + "'")
							
						});
						
			
					});
				
				}
			 
			});	
		
		}
		
	//Accordion (swaps class too)
	/*The inclusion of the two commented lines allows closing of all sections
	but that causes IE6 to behave stupidly ( the menu is collapsed as well) */		
	var accordion = new Accordion($$('div#accordionpanel h3'),$$('div#accordionpanel ul.element'), {
		//start: 'all-closed',
		//alwaysHide: true,
		onActive: function(toggler) {toggler.addClass('open');},
		onBackground: function(toggler) {toggler.removeClass('open');}
	});
	
}); 

function clearThis(x) {
	if(x==y.value)y.value=''
}

function resizeNav() {

	var padding = 0;
	
	var w = document.getElementById("top-nav");
	if(w==null) return;
	xW = w.offsetWidth;
	
	if(xW<1024) return;
	
	items = w.getElementsByTagName("li");
	var navItems = items.length;
	
	xP = xW * (padding-2 / 100);
	
	xT = (xW - (xP * (navItems - 1) ) ) /navItems;
	
	var list = $$('#top-nav li');	
	list.some(function(element, index) {
		element.setStyle('width', xT + 'px');
		element.setStyle('margin-right', xP + 'px');
	});	

}
