function ID(id) { return document.getElementById(id); }
function TAGS(elm) { return document.getElementsByTagName(elm); }


function DynamicFocus() {

	DynamicFocusField(window.document, 'input', 'text', 'iText');
	DynamicFocusField(window.document, 'input', 'password', 'iText');
	DynamicFocusField(window.document, 'textarea', 'textarea', 'iText');
	DynamicFocusField(window.document, 'select', 'select-one', 'iText');
	DynamicFocusField(window.document, 'input', 'button', 'iButton');
	DynamicFocusField(window.document, 'input', 'submit', 'iButton');
}

function DynamicFocusField(elm, tagName, typeName, className) {

	var inputs = elm.getElementsByTagName(tagName);

	for (var i = 0; i < inputs.length; i++) {
		if (inputs[i].type == typeName) {
			inputs[i].className += " " + className;
			inputs[i].onfocus = function() { HighLightOver(this, 'highlight'); }
			inputs[i].onblur = function() { HighLightOut(this, 'highlight'); }
		}
	}
}

function HighLightOver(obj, cls) {
	AddClassName(obj, cls);
}

function HighLightOut(obj, cls) {
	RemoveClassName(obj, cls);
}

function AddClassName(obj, cls) { if(obj) obj.className += " " + cls; }
function RemoveClassName(obj, cls) { if(obj) obj.className = obj.className.replace(cls, ""); }

function addLoadEvent(func) {
	var oldonload = window.onload;
	if (typeof window.onload != 'function') {
		window.onload = func;
	} else {
		window.onload = function() {
			if (oldonload) {
				oldonload();
			}
			func();
		}
	}
}

addLoadEvent(DynamicFocus);	