///////////////////////////////////

// For multiple onload events

var onloadEvents = new Array();

function setOnload(f)
{
	var i = onloadEvents.length;
	onloadEvents[i] = f;
}

function doOnload()
{
	if(onloadEvents.length == 0) return;

	for(var i = onloadEvents.length;i-->0;)
	{
		eval(onloadEvents[i] + "()");
	}
}

onload=doOnload;

function getTopMenus()
{
	var tagA = document.getElementsByTagName("a");
	var topMenus = new Array();
	var j=0;

	for(i=tagA.length;i-->0;)
	{
		if(tagA[i].id.indexOf("top-") > -1)
		{
			topMenus[j] = tagA[i].id;
			j++;
		}
	}
	return topMenus;
}

function getDropMenus()
{
	var tagDiv = document.getElementsByTagName("div");
	var dropMenus = new Array();
	var j=0;

	for(i=tagDiv.length;i-->0;)
	{
		if(tagDiv[i].id.indexOf("drop-") > -1)
		{
			dropMenus[j] = tagDiv[i].id;
			j++
		}
	}
	return dropMenus;
}

function getSelectElements()
{
	var tagSelect = document.getElementsByTagName("select");
	return tagSelect;
}

var dropMenuOpen = null;

function setTopMenus()
{
	uaDetect();

	if(this.ie && this.win)
	{

		var topMenus = getTopMenus();
		var dropMenus = getDropMenus();

		var tagSelect= getSelectElements();

		for(i=topMenus.length;i-->0;)
		{
			if(document.getElementById(topMenus[i].replace("top-","drop-")))
			{
				document.getElementById(topMenus[i]).onmouseover = function()
				{
					dropMenu = document.getElementById(this.id.replace("top-","drop-"));			
					if(dropMenuOpen) dropMenuOpen.style.display = "none";			
					dropMenu.style.display = "block";
					dropMenuOpen = dropMenu;
					
					for(i=tagSelect.length;i-->0;)
					{
						tagSelect[i].style.visibility = "hidden";
					}
				}	
				document.getElementById(topMenus[i]).onmouseout = function()
				{
					dropMenuOpen.style.display = "none";

					for(i=tagSelect.length;i-->0;)
					{
						tagSelect[i].style.visibility = "visible";
					}
				}
			}
		}
	
		for(i=dropMenus.length;i-->0;)
		{
			document.getElementById(dropMenus[i]).onmouseover = function()
			{
				dropMenu = document.getElementById(this.id);
				dropMenu.style.display = "block";

					for(i=tagSelect.length;i-->0;)
					{
						tagSelect[i].style.visibility = "hidden";
					}
			}	
			document.getElementById(dropMenus[i]).onmouseout = function()
			{
				dropMenuOpen.style.display = "none";

					for(i=tagSelect.length;i-->0;)
					{
						tagSelect[i].style.visibility = "visible";
					}
			}
		}

	}
}

//setOnload("setTopMenus");

///////////////////////////////////

function getLevels()
{
	var strLocation = window.location.pathname.split("/");

	var strLevel1,strLevel2,strLevel3,strFile;

	strFile = (strLocation[strLocation.length-1] != "") ? strLocation[strLocation.length-1] : "index.aspx";

	strLevel1 = (strLocation[1] && strLocation[1].indexOf(".")==-1) ? strLocation[1] : "home";
	strLevel2 = (strLocation[2] && strLocation[2].indexOf(".")==-1) ? strLocation[2] : null;
	strLevel3 = (strLocation[3] && strLocation[3].indexOf(".")==-1) ? strLocation[3] : null;

	var strLevels = new Array(strLevel1,strLevel2,strLevel3,strFile);

	return strLevels;
}

///////////////////////////////////

function next_element(o)
{	
	var n = o;
	do
	{
		n = n.nextSibling;
	}
	while(n && n.nodeType != 1);
	return n;
}

function leftMenu()
{
	var strMenu = getLevels();
	var openAll = (strMenu[0] == "home") ? 1 : 0;

	var objMenus = getMenus();

	if(!openAll)
	{
		var objMenu = document.getElementById("menu-" + strMenu[0]);

		if(objMenu)
		{
			objMenu.className = "menuOn";
			//objMenu.firstChild.nextSibling.style.display = "block";
		}
	}
	if(openAll)
	{
		var objMenu = document.getElementById("menu-departments");
		if(objMenu)
		{
			objMenu.className = "menuOn";
			//objMenu.firstChild.nextSibling.style.display = "block";
		}
	}

	var a = document.getElementsByTagName("a");

	for(var i=0;i<a.length-1;i++)
	{
/*
		if(a[i].getAttribute("href").indexOf(strMenu[3]) > -1 || a[i].getAttribute("href").indexOf(strMenu[1]) >-1)
		{
			a[i].className = (a[i].className == "more") ? "highlightMore" : "highlight";
		}
*/
		if(a[i].className.indexOf("menu-link") > -1 )
		{
			a[i].onclick= toggleMenu;
		}
	}
}

///////////////////////////////////

function toggleMenu()
{
	var objDiv = this.parentNode.parentNode;
	var objUl = this.parentNode.nextSibling;
	var objImg = this.firstChild;

	var toggle = (objUl.style.display == "block") ? 1 : 0;

	objUl.style.display = (toggle) ? "none" : "block";

	if(objDiv.className.indexOf("menuOn") > -1)
	{
		objImg.style.backgroundImage = (toggle) ? "url(/images/sidemenu/arrowoffmenuon.gif)" : "url(/images/sidemenu/arrowonmenuon.gif)";
	}
	else
	{
		objImg.style.backgroundImage = (toggle) ? "url(/images/sidemenu/arrowoffmenuoff.gif)" : "url(/images/sidemenu/arrowonmenuoff.gif)";
	}
}

///////////////////////////////////

function topMenu()
{
	var strMenu = getLevels();
	var objMenu = document.getElementById("top-" + strMenu[0]);

	if(objMenu)
	{
		objMenu.style.backgroundColor = "#fff";
		objMenu.style.backgroundImage = "none";
		objMenu.style.color = "#000";
	}
}

///////////////////////////////////

function getMenus()
{
	var tagDiv = document.getElementsByTagName("div");
	var objMenus = new Array();
	var j=0;

	for(i=tagDiv.length;i-->0;)
	{
		if(tagDiv[i].id.indexOf("menu-") > -1)
		{
			objMenus[j] = tagDiv[i].id;
			j++;
		}
	}
	return objMenus;
}

///////////////////////////////////

function getSubs()
{
	var getA = document.getElementsByTagName("a");
	var subA = new Array();
	var j=0;

	for(i=getA.length;i-->0;)
	{
		if(getA[i].className.indexOf("more")!=-1)
		{
			subA[j] = getA[i];
			j++;
		}
	}
	return subA;
}

///////////////////////////////////

function setSubs()
{
	var tagA = getSubs();
	
	for(i=tagA.length;i-->0;)
	{
		tagA[i].onmouseover=subOn;
		tagA[i].onmouseout=subOff;
	}
}

///////////////////////////////////

function subOn()
{
	var strURL = this.pathname.split("/");
	var strMenu = strURL.join("-") + "menu";
	var objMenu = document.getElementById(strMenu);

	objMenu.style.display = "block";
}

///////////////////////////////////

function subOff()
{
	var strURL = this.pathname.split("/");
	var strMenu = strURL.join("-") + "menu";
	var objMenu = document.getElementById(strMenu);

	objMenu.style.display = "none";
}

///////////////////////////////////

// This is for the page print tool
function pagePrint()
{
	window.print();
	return;
}

///////////////////////////////////

// This is for the page tools: Send An Email Link

function pageEmail()
{
	var strURL = window.location.href;
	var strTitle = document.getElementsByTagName("h1");
	var strPageName = strTitle[0].innerText;
	var strSubject = "A Link To The Tredyffrin Township Website";
	var strBody = "A link to the '" + strPageName + "' page at the Tredyffrin Township website has been sent to you. %0D%0DYou can visit this page at the Tredyffrin Township website: " + strURL + "%0D%0DThank you.%0D%0D------------------------%0DThis email was auto generated from the Tredyffrin Township website. Please do not reply to this email. If you would like to contact us, you can email us at http://mailto:info@tredyffrin.org.";
	window.open("mailto:?subject=" + strSubject + "&body=" + strBody);
	return;
}

///////////////////////////////////

// If res is lower than 1024 x 768, move the right side to the bottom

function sideBar()
{

	var colRight = document.getElementById("right");
	var colMiddle = document.getElementById("middle");
	//var quickContact = document.getElementById("quick-contact");

	if(colRight)
	{
	
		var cWidth;
	
		if(typeof( window.innerWidth ) == 'number' )
		{
			cWidth = window.innerWidth;
		}
		else if(document.documentElement && (document.documentElement.clientWidth || document.documentElement.clientHeight ))
		{
			cWidth = document.documentElement.clientWidth;
		}
		else if(document.body && (document.body.clientWidth || document.body.clientHeight ))
		{
			cWidth = document.body.clientWidth;
		}
	
		if(cWidth < 900)
		{
			// Right side features
			colRight.style.position = "relative";
			colRight.style.top = "auto";
			colRight.style.right = "auto";
			colRight.style.margin = "15px 0px 15px 0px";
			colRight.style.width = "auto";
			colRight.style.zIndex = "3";
			colRight.style.fontFamily = "verdana";
			colRight.style.height = "1%";
	
			// Right side contact information
			//quickContact.style.display = "none";
	
			// Middle content column
			colMiddle.style.marginRight = "15px"
		}
		else
		{
			// Right side features
			colRight.style.position = "absolute";
			colRight.style.top = "118px";
			colRight.style.width = "180px";
			colRight.style.right = "0px";
			colRight.style.margin = "0px 10px 10px 0px";
			colRight.style.zIndex = "1";
	
			// Right side contact information
			//quickContact.style.display = "block";
	
			// Middle content column
			colMiddle.style.marginRight = "205px"
		}
	}
}

//window.onresize = sideBar;

//setOnload("sideBar");

///// Meeting Minutes

function toggle_minutes(o)
{
	var minutes_list = document.getElementById(o);
	minutes_list.style.display = (minutes_list.style.display == "block") ? "none" : "block";
}

function show_latest_minutes()
{
	var get_date = new Date();
	var current_year = get_date.getYear();

	var all_minutes = document.getElementsByTagName("ul");

	for(var i=0; i<all_minutes.length; i++)
	{
		if(all_minutes[i].id && (all_minutes[i].id.indexOf(current_year) >=0))
		{
			all_minutes[i].style.display = "block";
		}
	}
}

setOnload("show_latest_minutes");

function trim(s)
{
	return s.replace(/^\s+|\s+$/g, '');
}

function validEmail(ea)
{
	var emailReg = "^[\\w-_\.]*[\\w-_\.]\@[\\w]\.+[\\w]+[\\w]$";
	var regex = new RegExp(emailReg);
	return regex.test(ea);
  }

function validate(f,el)
{
	var address = trim(document.getElementById(el).value);
	var valid = validEmail(address);

	if(!valid)
	{
		alert("\"" + address + "\" is not a valid email address. A valid email address is required to submit this form.");
		f.focus();
		f[el].select();
		return false;
	}
	else return true;
}