﻿// Amended version by Tui 13/05/2009
if(YAHOO && YAHOO.otorg && YAHOO.otorg.DomCollapse){
	YAHOO.otorg.DomCollapse.css = {
		triggerClass:'trigger',
		hideClass:'hide',
		parentClass:'parent',
		openClass:'open',
		containerClass:'container'
	};
	// added to provide additional funcitonality
	YAHOO.otorg.DomCollapse.toggleCB = function(e){
		// find container div
		var container = YAHOO.otorg.DomCollapse.css.containerClass;
		var targ = YAHOO.util.Event.getTarget(e);
		while(YAHOO.util.Dom.hasClass(targ,container) !== true && targ.nodeName !== 'BODY'){
			targ = targ.parentNode;		
		}
		if(YAHOO.util.Dom.hasClass(targ,container) && targ.nodeName === 'DIV'){
			// find first link in container (in h3)
			var h = targ.getElementsByTagName('H2')[0];
			var link = h.getElementsByTagName('A')[0];
			if(link){
				// toggle classes to force update of CSS
				var classes = [];
				var closed = YAHOO.util.Dom.hasClass(link, 'parent');
				classes[0] = closed ? 'parent' : 'open';
				classes[1] = closed ? 'open' : 'parent';									
				YAHOO.util.Dom.removeClass(link, classes[0]);
				YAHOO.util.Dom.addClass(link, classes[1]);
			}
			// update text of 'more'/'less' link
			var moreLink = targ.getElementsByTagName('P')[targ.getElementsByTagName('p').length-1].getElementsByTagName('A')[0];
			if(moreLink){
				var label = closed? "Less" : "More";  
				moreLink.innerHTML = label;
			}
		}	
	};
}
	
