﻿if(document.getElementsByTagName)
{
	//EventUtil allows you to dynamically add / remove event handlers from an element.
	//It also lets you assign multiple event handlers to a single event type (for example, multiple onload event handlers for the window object)
	EventUtil = new Object;

	EventUtil.addEventHandler = function(target, eventType, handler)
	{
		if(target.addEventListener)
		{
			//DOM-compliant browsers
			target.addEventListener(eventType, handler, false);
		}
		
		else if(target.attachEvent)
		{
			//IE
			target.attachEvent("on" + eventType, handler);
		}
	}

	EventUtil.removeEventHandler = function(target, eventType, handler)
	{
		if(target.removeEventListener)
		{
			//DOM-compliant browsers
			target.removeEventListener(eventType, handler, false);
		}
		
		else if(target.detachEvent)
		{
			//IE
			target.detachEvent("on" + eventType, handler);
		}
	}
	
	//Makes elements that have a class of focus on them focusable by the keyboard by putting a tab index 0 on the element.
	function initializeFocusableElements()
	{
		var elements = document.getElementsByTagName("*");
		
		if(elements.length == 0)
		{
			//IE 5
			elements = document.all;
		}
		
		for(var i = 0, n = elements.length; i < n; i++)
		{
			if((" " + elements[i].className + " ").indexOf(" focus ") != -1)
			{
				elements[i].tabIndex = 0;
				elements[i].setAttribute("tabindex", 0);
			}
		}
	}
	//10-11-12 mparsons - removed call to add tabindex="0" to elements like div, span, and p. No longer needed by modern screen readers
	//EventUtil.addEventHandler(window, "load", initializeFocusableElements);
}

