var DM = new Object();

DM.init = function() {
	var h2s = document.getElementsByTagName('H2');
	for (var i=0; i<h2s.length; i++) {
		//DM.switchMenu(h2s[i]);
		DM.addEvent(h2s[i], 'click', DM.switchMenuCatcher, false);
	}
}
		
DM.getTarget = function(e){
	var target = window.event ? window.event.srcElement : e ? e.target : null;
	if (!target){return false;}
	while(target.nodeType!=1 && target.nodeName.toLowerCase()!='body' || target.nodeName.toLowerCase()!='h2'){
		target=target.parentNode;
	}
	return target;
}

DM.switchMenu = function(h2) {
	var arrow = h2.firstChild;
	while (arrow.tagName != 'IMG') {
		arrow = arrow.nextSibling;
	}
	var list = h2.nextSibling;
	while (list.tagName != 'UL') {
		list = list.nextSibling;
	}
	if (list.style.display != 'none') {
		list.style.display = 'none';
		arrow.src = '/images/tier2/arrow-right.gif';
	}
	else {
		list.style.display = '';
		arrow.src = '/images/tier2/arrow-down.gif';
	}
}

DM.switchMenuCatcher = function(e) {
	var h2 = DM.getTarget(e);
	DM.switchMenu(h2);
}
		
DM.addEvent = function(elm, evType, fn, useCapture) {
// used to add event listeners
	if (elm.addEventListener) {
      elm.addEventListener(evType, fn, useCapture);
      return true;
    } else if (elm.attachEvent) {
      var r = elm.attachEvent('on' + evType, fn);
      return r;
    }
}

DM.addEvent(window, 'load', DM.init, false);