//read font-size cookie

function setFontSize(x) {
	x=x + "%";
	if($('elastic1')!=null) $('elastic1').setStyle('font-size', x);
	if($('nav1')!=null) $('nav1').setStyle('font-size', x);
	if($('nav2')!=null) $('nav2').setStyle('font-size', x);
	if($('main-nav')!=null) $('main-nav').setStyle('font-size', x);
	if($('breadcrumb')!=null) $('breadcrumb').setStyle('font-size', x);
	if($('controls')!=null) $('controls').setStyle('font-size', x);	
	if($('footer')!=null)$('footer').setStyle('font-size', x);
	if($('doc-footer')!=null) $('doc-footer').setStyle('font-size', x);
	if($('right-col')!=null) $('right-col').setStyle('font-size', x);		
}

function largeFont() {
	setFontSize(120);
	eraseCookie("knowledge-font-size");
	createCookie("knowledge-font-size", "largeFont", 21);
}

function mediumFont() {
	setFontSize(110);
	eraseCookie("knowledge-font-size");
	createCookie("knowledge-font-size", "mediumFont", 21);
}

function smallFont() {
	setFontSize(100);
	eraseCookie("knowledge-font-size");
	createCookie("knowledge-font-size", "smallFont", 21);
}

function writeControls() {
	document.write ('<div id="font-size">\n')
	document.write ('<h3>Font Size:</h3> <ul><li><a class="small-font" title="Small font size" href="javascript:smallFont()">A</a></li>\n')
	document.write ('<li><a class="medium-font" title="Medium font size" href="javascript:mediumFont()">A</a></li>\n')
	document.write ('<li><a class="large-font" title="Large font size" href="javascript:largeFont()">A</a></li></ul>\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 getElementsByClassName(oElm, strTagName, strClassName){
	var arrElements = (strTagName == "*" && oElm.all)? oElm.all : oElm.getElementsByTagName(strTagName);
	var arrReturnElements = new Array();
	strClassName = strClassName.replace(/\-/g, "\\-");
	var oRegExp = new RegExp("(^|\\s)" + strClassName + "(\\s|$)");
	var oElement;
	for(var i=0; i<arrElements.length; i++){
		oElement = arrElements[i];
		if(oRegExp.test(oElement.className)){
			arrReturnElements.push(oElement);
		}
	}
	return (arrReturnElements)
}

function writeControls() {
	document.write ('<div id="font-size">\n')
	document.write ('<h3>Font Size:</h3> <ul><li><a class="small-font" title="Small font size" href="javascript:smallFont()">A</a></li>\n')
	document.write ('<li><a class="medium-font" title="Medium font size" href="javascript:mediumFont()">A</a></li>\n')
	document.write ('<li><a class="large-font" title="Large font size" href="javascript:largeFont()">A</a></li></ul>\n')
	document.write ('</div>\n')
}

function mask(x) {
	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;
		
		xHEM = (xH / 16) / .75;
		xWEM = (xW / 16) / .75;
		xStyle = "height: " + xHEM + "em; width: " + xWEM + "em;"
		
		//create our mask element
		xImg = document.createElement("img")
		xImg.setAttribute("src", "site-laria2/images/f/mask" + xH + "x" + xW + ".png");
		xImg.setAttribute("class","mask"); 
		xImg.setAttribute("alt",'');
		xImg.setAttribute("height",xH);
		xImg.setAttribute("width",xW);
		xImg.setAttribute("style",xStyle);
		
		//append the image next to our base image - css should sort out the rest
		x[a].parentNode.appendChild(xImg);
	}
}

function elasticiseImages() {

	return;
	
	// 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";		
	
	}
	
}

function resizeNav() {

	var navItems = 7;
	var padding = 0.5;
	
	xW = document.getElementById("main-nav").offsetWidth;
	
	xP = xW * (padding / 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');
	});
		

}

var IE6 = false /*@cc_on || @_jscript_version < 5.7 @*/;

//if(IE6) window.onresize= resizeNav;

window.addEvent('domready', function() {
						
	// are there masked elements on this page?		
	masks = getElementsByClassName(document.getElementById('middle-col'), 'img', 'masked');
	if(masks.length>0) mask(masks);
	
	//make images scalable by converting the height & width to ems
	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 = $$('div.bubble-form input.text');		
	list.some(function(element, index) {
		element.addEvent('focus', function(){
			element.setStyle('background-image', 'url(site-laria2/images/f/input-bg-focus.gif)');
		});
		element.addEvent('blur', function(){
			element.setStyle('background-image', 'url(site-laria2/images/f/input-bg.gif)');
		});
	});
			
	// implement motools LH Navigation		
	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().className=="parent";
		
	 	if(!pClass) {
	 
			element.addEvent('mouseenter', function(){
				if(eBG!='ransparent') {
					fx.start({
						'background-color': '#FCE9C7'	
					});	
				}
			});
		 
			element.addEvent('mouseleave', function(){
					
				fx.start({
					'background-color': eval("'" + eBG + "'")
				});
				
	
			});
		
		}
	 
	});
	
}); 
