// used by home page and About Oregon page.

function initTabs()
{
	var tabset = $$(".tabset");
	tabset.each(function(el, i)
	{
		var active = el.getElements("li.active");
		if(active)
		{
			active.each(function(el2, i)
			{
				var tab = el2.getElement("a").rel;
				$(tab).setStyle("display", "block");
			});
		}
		var tabs = el.getElements("li");
		tabs.each(function(el3, i)
		{
			el3.onmouseover = function()
			{
				tabs.removeClass("active");
				el.getParent("div").getElements(".tab").setStyles({"display": "none"});
				
				var tab = el3.getElement("a").rel;
	
				$(tab).setStyle("display", "block");
				
				this.addClass("active");
			}
		});
	});
}

if (window.addEventListener)
	window.addEventListener("load", initTabs, false);
else if (window.attachEvent)
	window.attachEvent("onload", initTabs);
	
initNav = function() {
	var navRoot = document.getElementById("nav");
	var lis = navRoot.getElementsByTagName("li");
	for (var i=0; i<lis.length; i++)
	{
		var shadow = lis[i].getElementsByTagName("span")[0];
		if (shadow ) shadow.style.width = lis[i].offsetWidth + "px";
		lis[i].onmouseover = function()
		{
			this.className += " hover";
		}
		lis[i].onmouseout = function()
		{
			this.className = this.className.replace("hover", "");
		}
	}
}
if (document.all && window.attachEvent)
	attachEvent("onload", initNav);
	
function initInputs()
{
	var inputs = document.getElementsByTagName("input");
	for (var i=0; i<inputs.length; i++)
	{
		if (inputs[i].type == "text" && (inputs[i].name == "newsletter_email" || inputs[i].name == "site_search" || inputs[i].name == "search_keyword"))
		
		{
			var form = getAncestor(inputs[i], "form");
			if (form) form.onsubmit = handleSubmit;
			inputs[i].onfocus = function ()
			{
					if ((this.value == "e-mail address") || (this.value == "Search") || (this.value == "Search Term"))
						this.value = "";
			}
			inputs[i].onblur = function ()
			{
					if (this.value == "" && this.name == "newsletter_email") this.value = "e-mail address";
					if (this.value == "" && this.name == "site_search") this.value = "Search";
					if (this.value == "" && this.name == "search_keyword") this.value = "Search Term";
			}
		}
	}
}
function getAncestor(element, tagName)
{
	var node = element;
	while (node.parentNode && (!node.tagName ||
			(node.tagName.toUpperCase() != tagName.toUpperCase())))
		node = node.parentNode;
	return node;
}
function handleSubmit()
{
	var re = new RegExp('^\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*$');
	var element = this.elements["newsletter_email"];
	if (element)
	{
		if (element.value == "")
		{
			alert("Email address is empty!");
			return false;
		}
		else
			return element.value.match(re)
				|| (alert("You have entered incorrect email address!"), false);
	}
	return true;
}
if (window.addEventListener)
{
	window.addEventListener("load", initInputs, false);
}
else if (window.attachEvent){
	window.attachEvent("onload", initInputs);
}

window.onload = function(){
	textChanger.init(); 	
}

var textChanger = {
	cpanel : 'textchanger',  //set the id of the element (div, p) 
	element : 'page-box',   	 //set the id of the element (div, p) 
	defaultFS : 1.2,         //set here the default font size in 'em'
	init: function() {
		var cpel = document.getElementById(textChanger.cpanel);
		var el = document.getElementsByTagName("body")[0];
		if (cpel == null || el == null) {} else {
		var u = document.createElement('ul');
		cpel.appendChild(u);
		u.innerHTML = 
		'<li id="decrease"><a href="#" title="Decrease font size">A</a></li>'+
		'<li id="reset"><a href="#" title="Default font size">A</a></li>'+
		'<li id="increase"><a href="#" title="Increase font size">A</a></li>'
		var sz = textChanger.getCookie();
		el.style.fontSize = sz ? sz + 'em' : textChanger.defaultFS + 'em';
		var incr = document.getElementById('increase');
		incr.onclick = function(){textChanger.changeSize(1); return false;};
		var decr = document.getElementById('decrease');
		decr.onclick = function(){textChanger.changeSize(-1); return false;};
		var reset= document.getElementById('reset');
		reset.onclick = function(){textChanger.changeSize(0); return false;};
		}
	} ,

	changeSize: function(val) {
		var el = document.getElementsByTagName("body")[0];
		var size = el.style.fontSize.substring(0,3);
		var fSize = parseFloat(size,10);
		if (val == 1) {
			fSize += 0.11;
			if (fSize > 1.43) fSize = 1.43;
		} 
		if (val == -1) {
			fSize -= 0.11;
			if (fSize < 0.98) fSize = 0.98;
		}		
		if (val == 0) {
			fSize = 1.2;
		}
		el.style.fontSize = fSize + 'em';
		textChanger.updateCookie(fSize);
		} ,
		
	updateCookie: function(vl) {
		var today = new Date();
		var exp = new Date(today.getTime() + (365*24*60*60*1000)); //the cookie will expire in one year  
		document.cookie = 'textChangerL=size=' + vl + ';' +'expires=' + exp.toGMTString() + ';' +'path=/';
	} ,

	getCookie: function() { 
		var cname = 'textChangerL=size=';
		var start = document.cookie.indexOf(cname);
		var len = start + cname.length;
		if ((!start) && (cname != document.cookie.substring(0,cname.length))) {return null;}
		if (start == -1) return null;
		var end = document.cookie.indexOf(";",len);
		if (end == -1) end = document.cookie.length;
		return unescape(document.cookie.substring(len, end));
	}
}